问题排查
运行yum install docker后,安装完成docker。
运行 docker info 命令测试docker是否正常。
则提示以下错误:
“Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?”
明显是提示我们的docker守护进程是否启动?于是,我查看docker守护进程是否启动:
[root@jingf01 default]# systemctl status docker
● docker.service - Docker Application Container Engine
Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)
Active: failed (Result: exit-code) since Mon 2019-03-18 23:35:33 CST; 5min ago
Docs: http://docs.docker.com
Process: 52120 ExecStart=/usr/bin/dockerd-current --add-runtime docker-runc=/usr/libexec/docker/docker-runc-current --default-runtime=docker-runc --exec-opt native.cgroupdriver=systemd --userland-proxy-path=/usr/libexec/docker/docker-proxy-current --init-path=/usr/libexec/docker/docker-init-current --seccomp-profile=/etc/docker/seccomp.json $OPTIONS $DOCKER_STORAGE_OPTIONS $DOCKER_NETWORK_OPTIONS $ADD_REGISTRY $BLOCK_REGISTRY $INSECURE_REGISTRY $REGISTRIES (code=exited, status=1/FAILURE)
Main PID: 52120 (code=exited, status=1/FAILURE)
Mar 18 23:35:31 jingf01 systemd[1]: Starting Docker Application Container Engine...
Mar 18 23:35:31 jingf01 dockerd-current[52120]: time="2019-03-18T23:35:31.543605257+08:00" level=warning msg="could not change group /var/r...t found"
Mar 18 23:35:31 jingf01 dockerd-current[52120]: time="2019-03-18T23:35:31.561544858+08:00" level=info msg="libcontainerd: new containerd pr...: 52130"
Mar 18 23:35:32 jingf01 dockerd-current[52120]: time="2019-03-18T23:35:32.574888693+08:00" level=warning msg="overlay2: the backing xfs filesystem ...
Mar 18 23:35:32 jingf01 dockerd-current[52120]: time="2019-03-18T23:35:32.575127998+08:00" level=info msg="[graphdriver] using prior storag...verlay2"
Mar 18 23:35:33 jingf01 dockerd-current[52120]: Error starting daemon: SELinux is not supported with the overlay2 graph driver on this kern...d=false)
Mar 18 23:35:33 jingf01 systemd[1]: docker.service: main process exited, code=exited, status=1/FAILURE
Mar 18 23:35:33 jingf01 systemd[1]: Failed to start Docker Application Container Engine.
Mar 18 23:35:33 jingf01 systemd[1]: Unit docker.service entered failed state.
Mar 18 23:35:33 jingf01 systemd[1]: docker.service failed.
Hint: Some lines were ellipsized, use -l to show in full.
上面有个错误提示,我们服务启动失败了。是因为SELinux 不支持overlay2 graph driver 。于是,我们关闭docker 的SELinux 即可。
解决方案
1.修改以下文件
[root@jingf01 default]# vi /etc/sysconfig/docker
2.将第四行的红色部分改为false即可
1 # /etc/sysconfig/docker
2
3 # Modify these options if you want to change the way the docker daemon r uns
4 OPTIONS='--selinux-enabled=false --log-driver=journald --signature-verif ication=false'
5 if [ -z "${DOCKER_CERT_PATH}" ]; then
6 DOCKER_CERT_PATH=/etc/docker
7 fi
...
...
3.启动docker服务
[root@jingf01 default]# systemctl start docker
4.测试docker,正常。
[root@jingf01 default]# docker info
Containers: 0
Running: 0
Paused: 0
Stopped: 0
Images: 0
Server Version: 1.13.1
Storage Driver: overlay2