Docker是一个能把开发的应用程序自动部署到容器的开源引擎。docker
Docker能够部署在Ubuntu、Centos等宿主机中。在Centos7中使用如下命令安装:ubuntu
#安装Docker,-y参数表示answer yes for all questions, sudo yum install -y docker #启动Docker sudo systemctl start docker #查看docker是否运行正常 docker info
Docker镜像是由文件系统叠加而成的。segmentfault
#列出所有镜像 docker images #列出指定的镜像 docker images 镜像名称
拉取镜像时会先在本地查找,若是本地没有,就会去Docker Hub下载该镜像。Docker Hub具备两种类型的仓库,一种是用户仓库,由Docker用户建立;另外一种是顶层仓库,由Docker内部人员管理。bash
#例如:docker pull fedora:20 docker pull 镜像名称:标签
#查找Docker Hub上的公共可用镜像 docker search 镜像名称
(1)使用docker commit命令服务器
#docker commit提交的是建立容器的镜像与容器当前状态之间的差异。 docker commit 容器ID 用户名/仓库名
(2)使用Dockerfile建立rest
https://segmentfault.com/a/11...日志
docker rm 镜像名称
在建立一个容器时,docker会构建出一个镜像栈,在栈的最顶端添加一个读写层。这个读写层再加上其下面的镜像层以及一些配置数据,就构成了一个容器。code
a.建立交互式容器教程
#-i:保证容器的STDIN是开启的。 #-t:表示docker会为建立的容器开启一个伪tty终端。 #ubuntu:以ubuntu为基础镜像构建新的镜像。docker会先检查本地是否存在ubuntu镜像,若是不存在就到Docker Hub Registry找。 #--name 指定容器的名称,若是不指定,docker会随机生成一个名字。 #/bin/bash:容器建立完成以后,会执行/bin/bash命令。 docker run -t -i --name container_name ubuntu /bin/bash
b.建立长期运行的容器开发
#-d:docker会把容器放到后台运行。 docker run -d --name container_name ubuntu
#列出正在运行的容器 docker ps #列出最后一个运行的容器 docker ps -l #列出所有容器5 docker ps -a #返回指定容器的配置信息 docker inspect 容器名称
容器从新启动的时候会按照docker run的命令的参数运行。另外,使用docker restart命令能够从新启动一个容器。使用docker create命令能够建立一个容器可是不运行。
#指定容器名称重启容器 docker start 容器名称 #指定容器ID重启容器 docker start 容器ID
#附着到指定容器ID的容器上 docker attach 容器ID #附着到指定容器名称的容器上 docker attach 容器名称
#查看指定容器的日志 docker logs 容器名称 #跟踪指定容器的日志 docker logs -f 容器名称 #列出指定容器的日志的最后10行 docker logs --tail 10 容器名称 # docker logs --tail 0 -f 容器名称 #容器的日志加上时间戳 docker logs -t 容器名称 #将日志输出重定向到syslog。 docker run --log-driver="syslog" --name 容器名称 -d ubuntu
#删除指定容器 docker rm 容器ID
《第一本Docker书》