CentOS Linux release 7.2.1511

Docker version 17.03.1-ce

安装与启动

yum默认只有旧版本的docker,没有docker-ce,需要添加一个docker-ce的源:

// 这里用的中科大的源,速度会比较理想;而官方的地址是:https://download.docker.com
# wget https://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo
#yum install -y docker-ce

启动和验证:

# systemctl start docker
# docker -v
Docker version 17.03.1-ce, build c6d412e

查询和下载镜像

查询:

# docker search centos
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
centos The official build of CentOS. 3217 [OK]
jdeathe/centos-ssh CentOS-6 6.8 x86_64 / CentOS-7 7.3.1611 x8... 63 [OK]
consol/centos-xfce-vnc Centos container with "headless" VNC sessi... 24 [OK]
...

没什么特殊原因当然用第一个官方的镜像,理论上应该这样下载docker pull centos,但因为服务器在国外容易失败,所以用国内的源daocloud.io/centos

下载和展示:

# docker pull daocloud.io/centos
# docker images
  REPOSITORY           TAG                 IMAGE ID            CREATED             SIZE
  daocloud.io/centos   latest              67591570dd29        11 weeks ago        191.8 MB

启动镜像

# docker run -dti --name hellodocker daocloud.io/centos

参数解析:

-d      后台运行

-t      分配一个伪终端,这样下面才能连进去

-i      保持输入,这样连进去后才能正常使用命令

--name   指定容器的名字,不指定会随机生成一个

从镜像启动后的东西叫容器,通过 ps 查看(ps只显示正在运行的容器,显示所有需要加参数-a):

# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c74f53b8dbef daocloud.io/centos "/bin/bash" seconds ago Up seconds hellodocker

第一列是容器id,最后一列是容器名,在下面连接、停止、启动等操作时传入这两者都可以,其中id可以只传前三位类似git那种使用方式;

容器管理

连接到启动的容器用 attach ,连接成功后就可以像操作一台真实的linux一样(不过由于attach到的是同一个/bin/bash所以不支持多用户操作):

# docker attach hellodocker
[root@c74f53b8dbef /]# whoami
root
[root@c74f53b8dbef /]# pwd
/
[root@c74f53b8dbef /]#

attach后退出有两种方式,直接输入exit,但这样会把容器也停掉;不停容器的退出方式是ctrl+p+q;

停止容器:

# docker stop hellodocker    //正常关机,需要一点时间
# docker kill hellodocker //这个相当于直接断电

再启动的时候注意不要再用docker run了,那样会重新生成一个新容器,应该这样:

# docker start hellodocker

删除容器和镜像:

# docker rm hellodocker
# docker rmi daocloud.io/centos

over

docker 初步使用的更多相关文章

  1. Docker初步认识安装和简单实例

    前话 问题 开发网站需要搭建服务器环境,FQ官网下载软件包,搭建配置nginx,apache,数据库等.官网没有直接可用的运行版本,担心网络流传的非官方发布软件包不安全还得自行编译官方源码安装,忘记步 ...

  2. Docker初步了解 2016-10-30 20:46 279人阅读 评论(31) 收藏

    什么是docker? Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的.可移植的.自给自足的容器. Docker本质上是一种软件,让用户创建镜像(很像虚拟机的模板),并且随后在容器里 ...

  3. docker初步

    [Note,]由于docker的局限性,docker只能运行在64位的系统中 docker软件应用程序可以重复地运行在任何地方,因为它的容器包含了所有的环境依赖关系! docker有三种方式运行 作为 ...

  4. Docker 初步认识

    1.docker 是什么? 一个开源的应用容器引擎,个人理解 就是虚拟的应用运行环境. 2.安装Docker for windows 下载地址 :https://store.docker.com/ed ...

  5. Docker初步了解

    Docker 是什么 https://www.docker.com/ Docker 这个单词英文原意是码头工人,搬运工的意思,这个搬运工搬运的是各种应用的容器. 官方的说法是,Docker 是提供给开 ...

  6. docker 初识之二(简单发布ASP.NET Core 网站)

    在发布ASP.NET Core网站以前,先介绍一下DaoCloud 一个免费的docker云容器服务平台.登陆官方网站,创建一台docker主机,这台主机有120分钟的使用时间,对于鄙人学习使用正好合 ...

  7. Docker技术综述

    从技术入门到实战:docker初步尝试 docker中文社区 容器和镜像的导入和导出

  8. 阿里云ECS(Centos7.2 64bit)安装Docker

    购买了阿里云的ECS服务器后,一直在尝试安装Docker,使用过Ubuntu和CentOS系统,也一直在查找文档,但都是Docker安装完成后却无法访问,一直在ECS上不停的更换系统盘 再次按官方文档 ...

  9. 总结对Docker这个东西的想法

    记得一开始的时候,还只能在一些网站上看到关于Docker零星的一些消息,之后的不久,有关Docker消息就遍布网络. 是什么因素让Docker火起来的? 或者说什么原因促使大家都对Docker感兴趣并 ...

随机推荐

  1. [LeetCode] 329. Longest Increasing Path in a Matrix_Hard tag: Dynamic Programming, DFS, Memoization

    Given an integer matrix, find the length of the longest increasing path. From each cell, you can eit ...

  2. node加密解密 crytpo

    var crypto = require('crypto'); exports.encrypt = function (str, secret) { var cipher = crypto.creat ...

  3. 《算法笔记》8.1小节——搜索专题->深度优先搜索(DFS)

    http://codeup.cn/contest.php 5972 这是递归的入门题,求全排列,第一种方法用STL中的函数next_permutation,可以很容易的实现.首先建立好数组,将需要全排 ...

  4. Http 服务 简单示例

    现在我们实现一个GO的Web http服务 只做演示,没有实际功能 但是能看出Go做Http服务的简洁 **************************************** package ...

  5. MySQL-UNIQUE

    什么是UNIQUE约束 可以使用 UNIQUE 约束确保在非主键列中不输入重复的值.尽管 UNIQUE 约束和 PRIMARY KEY 约束都强制唯一性,但想要强制一列或多列组合(不是主键)的唯一性时 ...

  6. SQL中的关联更新和关联删除

    在SQL中,经常用到关联查询,比如select a.* from A a inner join B b on a.PId=b.FId where 条件,SQL中也支持类似的关联更新和关联删除. 关联更 ...

  7. RocketMQ的使用

    1 在resources目录下创建config目录,新建文件rocketmq.properties文件 # 指定namesrv地址 suning.rocketmq.namesrvAddr=localh ...

  8. 如何注销Sitecore CMS

    登录Sitecore很容易,但是在旧版本的Sitecore中使用不同的界面,退出可能会给未经证实的人带来挑战. Sitecore 8 Sitecore 6和7 Sitecore 8 Sitecore ...

  9. Azure Messaging-ServiceBus Messaging消息队列技术系列1-基本概念和架构

    前段时间研究了Window Azure ServiceBus Messaging消息队列技术,搞了很多技术研究和代码验证,最近准备总结一下,分享给大家. 首先,Windows Azure提供了两种类型 ...

  10. importlib

    Python提供了importlib包作为标准库的一部分.目的就是提供Python中import语句的实现(以及__import__函数).另外,importlib允许程序员创建他们自定义的对象,可用 ...