接上一篇,在 VirtualBox 上安装配置好了 CentOS7 ,继续在这个虚拟机上装好 docker 并总结一下使用到的常用功能。
安装Docker
安装直接参考官网来安装就OK,没有遇到什么问题,值得注意的就是 docker 需要内核版本在 3.10 以上,如果之前安装过,记得先 remove 掉之前的旧版本。

官网安装指南:centos安装docker,基本上就是:
安装库
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
安装docker
yum install docker-ce docker-ce-cli containerd.io
运行docker
systemctl start docker
按照指南成功安装运行,查看状态 service docker status -l 。
Docker服务端自启动
适用于使用 yum 安装的各种服务。
查看已启动的服务:
systemctl list-units --type=service
查看已有的开机启动服务:
systemctl list-unit-files | grep enable
设置/关闭开机启动:
systemctl enable/disable docker.service
Docker容器设置自启动
在启动的时候加上 --restart=always 即可。
docker run -p 8092:80 --name apicloud -v /home/lifehaier:/var/www/html -d --restart=on-failure:3 hub.docker.terminus.io:5000/aabb:20180315
解析:使用 docker run 命令运行一个容器,该容器内部监听 80 端口,与宿主机系统 8092 端口映射,命名该容器名称为 apicloud ,宿主机系统目录 /home/lifehaier 与容器内部 /var/www/html 路径映射,如果容器对应的 images 路径 /var/www/html 下面有数据的话,则被宿主机 /home/lifehaier 路径下面的数据覆盖, -d 参数是让容器后台运行, --restart=on-failure:3 是指容器在未来出现异常退出(退出码非0)的情况下循环重启3次; hub.docker.terminus.io:5000/aabb:20180315 是 images 名称,容器基于此 images 进行启动。
重启 --restart 参数选项:
no 不自动重启容器. (默认value)
on-failure 容器发生非正常退出(容器退出状态不为0)时重启容器
on-failure:3 容器发生非正常退出(容器退出状态不为0)时重启容器,最多重启3次
unless-stopped 在容器退出时总是重启容器,但是不考虑在Docker守护进程启动时就已经停止了的容器
always 在容器退出时总是重启容器