一、安装docker
前置条件:Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker 。
1、通过 uname -r 命令查看你当前的内核版本
$ uname -r
例如我的版本:
2、使用 root 权限登录 Centos。确保 yum 包更新到最新。
$ yum update -y
3、卸载旧版本(如果安装过旧版本的话)
$ yum remove docker docker-common docker-selinux docker-engine
4、安装docker
安装docker:$ yum -y install docker
启动docker:$ systemctl start docker
设置开机启动:$ systemctl enable docker
5、验证版本
$ docker version
6、配置镜像加速器
vim /etc/docker/daemon.json
{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
}
7、重启docker
systemctl daemon-reload
systemctl restart docker.service ##重启服务
8、测试运行docker
docker run hello-world
运行结果:
二、问题
错误信息:
Job for docker.service failed because the control process exited with error
code.See "systemctl status docker.service" and "journalctl -xe" for details.
出现这个错误的原因:
1、镜像地址失效,lz就遇到这个问题了。如果遇到镜像地址失效,请自行寻找合适的地址。
2、docker的socket配置出现了冲突,docker在运行时有一个启动入口文 件:/lib/systemd/system/docker.service,而我们在修改镜像加速器的时候又给它生成了一个配置文件:/etc/docker/daemon.json,两个文件对host进行了配置,所以发生冲突。
解决方式:
vim /lib/systemd/system/docker.service
原:ExecStart=/usr/bin/dockerd -H fd:// $DOCKER_OPTS
改成:ExecStart=/usr/bin/dockerd
或者改成:ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock
然后重启,完成安装。