Docker 在 CentOS 7 上不会拉取容器
Docker on CentOS 7 will not pull containers
我按照说明 here 在 Centos 7 上安装 Docker CE。一切顺利,直到 "docker run hello-world"。我根本无法提取 docker 个图像。
我怀疑是网络问题,但是我可以毫无问题地 ping 通外部世界。我的用户已被添加到 docker 组并且能够执行所有常用的 docker 命令而没有错误。
CentOS 运行 在 VMWare 中以桥接模式使用静态 IP 地址。
更新:我在 VM 映像上切换到 NAT,现在可以拉取了。但是,我很快就需要使用桥接模式,所以我想从根本上解决这个问题。我可以使用 yum 安装软件,我可以安装 Docker,我就是不能拉取容器。
我发现这个 涵盖了我所看到的相同 HTTP 408 错误。但是,我没有发现我的网络有什么奇怪的地方。欢迎对此有任何想法。我会尝试 运行 Wireshark,看看是否能发现任何东西。
问题解决了!在 github 问题部分仔细研究后,我注意到围绕此问题存在大量问题。根据经验数据的优势,我将我的网络设备上的 MTU 从 1500 设置为 900,我立即能够拉 hello-world.
ip link set dev ens33 mtu 900
我在拉取过程中收到以下警告:
WARNING: IPv4 forwarding is disabled. Networking will not work.
所以我将以下内容添加到 /etc/sysctl.conf:
net.ipv4.ip_forward=1
然后我重新启动了网络服务并验证了设置:
[root@buildsvr2 ~]# systemctl restart network
[root@buildsvr2 ~]# sysctl net.ipv4.ip_forward
net.ipv4.ip_forward = 1
现在一切正常。
更新:我不确定为什么 MTU 更改有效。我注意到在我的 Wireshark 跟踪中有大量碎片化的数据包。我会在 Docker github 网站上跟进。
我按照说明 here 在 Centos 7 上安装 Docker CE。一切顺利,直到 "docker run hello-world"。我根本无法提取 docker 个图像。
我怀疑是网络问题,但是我可以毫无问题地 ping 通外部世界。我的用户已被添加到 docker 组并且能够执行所有常用的 docker 命令而没有错误。
CentOS 运行 在 VMWare 中以桥接模式使用静态 IP 地址。
更新:我在 VM 映像上切换到 NAT,现在可以拉取了。但是,我很快就需要使用桥接模式,所以我想从根本上解决这个问题。我可以使用 yum 安装软件,我可以安装 Docker,我就是不能拉取容器。
我发现这个
问题解决了!在 github 问题部分仔细研究后,我注意到围绕此问题存在大量问题。根据经验数据的优势,我将我的网络设备上的 MTU 从 1500 设置为 900,我立即能够拉 hello-world.
ip link set dev ens33 mtu 900
我在拉取过程中收到以下警告:
WARNING: IPv4 forwarding is disabled. Networking will not work.
所以我将以下内容添加到 /etc/sysctl.conf:
net.ipv4.ip_forward=1
然后我重新启动了网络服务并验证了设置:
[root@buildsvr2 ~]# systemctl restart network
[root@buildsvr2 ~]# sysctl net.ipv4.ip_forward
net.ipv4.ip_forward = 1
现在一切正常。
更新:我不确定为什么 MTU 更改有效。我注意到在我的 Wireshark 跟踪中有大量碎片化的数据包。我会在 Docker github 网站上跟进。