Linux 配置 daemon.json hosts参数导致Docker服务启动失败
TCP访问,第一种配置方式
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
| [root@bogon docker]# tree /etc/docker/ /etc/docker/ └── daemon.json
# 配置 daemon.json
[root@bogon docker]# cat daemon.json { "insecure-registries" : [ "192.168.10.25:8082" # 私有docker hub,http方式访问 ], "hosts" : [ "unix:\/\/\/var\/run\/docker.sock", "tcp:\/\/0.0.0.0:2375" ], "registry-mirrors" : [ "https:\/\/docker.mirrors.ustc.edu.cn", "https:\/\/hub-mirror.c.163.com" ] }
# 如果 systemctl start docker 无法启动 - 首先检查 daemon.json 配置是否正确 - 检查 /usr/lib/systemd/system/docker.service 文件 是否含有如下配置
#ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock #注释此行 ExecStart=/usr/bin/dockerd # 使用此配置,再次启动docker服务
|
Docker 服务配置信息 /usr/lib/systemd/system/docker.service
TCP访问, 第二种 配置TCP访问 (不推荐,容易坑人)
1 2 3 4 5
| # 获取删除 daemon.json 中的hosts配置 # /usr/lib/systemd/system/docker.service 使用 -H 0.0.0.0:2375 配置TCP访问 ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock -H 0.0.0.0:2375
|
效果
如果还不能访问,检查防火墙状态。