Docker安装调试输出HelloWorld,显示报错[阿里云免费试用]

显示报错:

报错信息:

Error response from daemon: Head "https://registry-1.docker.io/v2/library/hello-world/manifests/latest": Get "https://auth.docker.io/token?scope=repository%3Alibrary%2Fhello-world%3Apull&service=registry.docker.io": net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)

环境使用的是Centos:
Linux localhost.localdomain 3.10.0-1160.el7.x86_64 #1 SMP Mon Oct 19 16:18:59 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

安装是按照Docker官网装的
不过config-manager是执行的阿里的
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
1.网络是可以正常使用的
2.加速器也是使用的阿里的(报错后尝试过多个加速器仍未解决)
3.host文件也尝试过修改,但也未能解决

求问:是否有人遇到过相通的情况,如何解决的?

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
=====这是一个广告位,招租中,联系qq 78315851====
6 条回复 A 作者 M 管理员
  1. 谢谢各位,问题已经解决,昨天熬夜使用了各种办法进行了测试。直到今天中午和下午进行再次试验,偶然发现是网络设置问题。

    因为之前有修改各种镜像加速,并进行了测试,测试时,虚拟机可以ping通百度,或者其他网络,所以也觉得网络没有什么问题。中间也试过重装docker,修改dns等。
    直到今天晚上将Net连接,改为桥接模式后,才运行成功。

    在此谢谢各位解答,虽然不一定能解决问题,但是比较具有参考意义。感谢!

  2. 这个要配置dns8888
    源可以在阿里的容器镜像加速器那里找

  3. 这个错误通常是由于网络连接问题导致的。当Docker无法连接到Docker Hub时,会出现类似的错误。以下是一些解决方法:

    1. 检查网络连接:确保您的计算机可以正常访问互联网,并且没有任何防火墙或代理设置阻止Docker与Docker Hub的连接。

    2. 检查Docker配置:确认您的Docker配置是否正确。您可以通过运行docker info命令来检查Docker的配置信息。如果配置有误,可以尝试重新配置或重新安装Docker。

    3. 更改Docker镜像源:有时,将Docker镜像源更改为国内源可能有助于解决连接问题。您可以尝试使用国内的Docker镜像源,如阿里云、腾讯云等。具体操作方法请参考相关文档和指南。

    4. 配置Docker代理:如果您在使用Docker时需要使用代理服务器,请确保已正确配置Docker的代理设置。您可以通过编辑/etc/systemd/system/docker.service.d/http-proxy.conf文件(Linux)或在Docker Desktop设置中配置代理。

    5. 重启Docker服务:尝试重新启动Docker服务以重新建立与Docker Hub的连接。您可以执行适用于您的操作系统的相应命令,如sudo systemctl restart docker(Linux)或通过Docker Desktop界面进行重启。

  4. 这个报错表明在与Docker Hub的通信过程中,出现了TLS证书验证失败的问题。可能的原因是Docker守护进程无法验证Docker Hub的证书。

    您可以尝试以下解决方法:

    1. 检查您的网络连接是否正常,确保可以访问互联网。
    2. 检查系统时间和时区是否正确设置,确保与实际时间一致。
    3. 尝试重新启动Docker服务,有时候重启服务可以解决证书验证问题。
    4. 如果您使用的是代理服务器,请确保代理服务器的配置正确,并且可以正常访问Docker Hub。
    5. 检查您的防火墙设置,确保允许Docker守护进程与外部服务器通信。

    如果以上方法都无法解决问题,您可以尝试手动导入Docker Hub的证书。具体操作方法可以参考Docker官方文档中的”Configure Docker to use a proxy server”部分。

  5. 楼主你好,这个报错信息看起来像是网络连接超时导致的。可以尝试以下方法解决:

    1. 检查网络连接是否正常。可以使用ping命令测试Docker官网或阿里云加速器的IP是否能够正常连接。

    2. 检查防火墙是否阻止了Docker的网络连接。可以尝试关闭防火墙或者添加Docker的入站规则。

    3. 重启Docker服务。可以使用以下命令重启Docker服务:

    sudo systemctl restart docker

    1. 清理Docker缓存。可以尝试清理Docker的缓存,并重新拉取HelloWorld镜像:

    sudo docker system prune -asudo docker pull hello-worldsudo docker run hello-world

    如果以上方法都无法解决问题,可以尝试在Docker配置文件中添加代理设置,或者卸载重装Docker。

  6. 该错误通常表示 Docker 客户端在下载 Docker 镜像时超时。这可能是因为 Docker 客户端在下载 Docker 镜像时网络连接出现问题,或者 Docker 镜像服务器响应时间过长。
    确认 Docker 客户端是否已经安装正确;
    确认 Docker 客户端的网络连接是否正常;
    确认 Docker 镜像服务器是否正常运行;

  7. 根据报错信息,这个问题可能与网络连接有关。以下是一些可能的解决方案:

    1. 检查网络连接:确保您的机器可以正常访问互联网,并且没有任何防火墙或代理服务器阻止Docker与Docker官方的注册表进行通信。

    2. 检查DNS设置:请确保您的机器正确配置了DNS服务器。您可以尝试使用其他公共DNS服务器,如谷歌的8.8.8.8或Cloudflare的1.1.1.1。

    3. 更改Docker镜像源:除了修改/etc/hosts文件以外,您还可以尝试更改Docker的镜像源。在CentOS中,您可以编辑/etc/docker/daemon.json文件并添加以下内容:

    json
    {
    “registry-mirrors”: [“https://your-registry-mirror-url”]
    }

    your-registry-mirror-url替换为可用的镜像源地址,例如 https://docker.mirrors.ustc.edu.cn。

    1. 清理Docker缓存:有时候Docker缓存的一些临时文件可能会导致问题。您可以尝试清理Docker的缓存,然后重新运行Hello World镜像。使用以下命令清理Docker缓存:

    shell
    sudo docker system prune -a

    注意,这将删除您系统上的所有未使用的镜像、容器和网络,所以请谨慎操作。