Docker配置daemon.json

Docker拉取镜像失败的解决方案

在从Docker的Hub库中拉取镜像时,可能会遇到以下错误:

vbnet 复制代码
docker: Error response from daemon: Get "https://registry-1.docker.io/v2/": net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers).
See 'docker run --help'.

这个问题通常是由于网络连接问题或镜像源访问受限导致的。以下是详细的解决方法。

解决方法

1. 检查网络连接

首先确保你的服务器能够正常访问互联网,可以尝试使用以下命令测试网络连接:

复制代码
ping google.com

如果网络连接存在问题,请先修复网络。

2. 修改Docker配置文件

编辑Docker的配置文件 /etc/docker/daemon.json,添加或修改如下内容,以使用国内的镜像加速器:

代码如下:

json 复制代码
{
    "runtimes": {
        "nvidia": {
            "args": [],
            "path": "nvidia-container-runtime"
        }
    },
    "registry-mirrors": [
        "https://docker.registry.cyou",
        "https://docker-cf.registry.cyou",
        "https://dockercf.jsdelivr.fyi",
        "https://docker.jsdelivr.fyi",
        "https://dockertest.jsdelivr.fyi",
        "https://mirror.aliyuncs.com",
        "https://dockerproxy.com",
        "https://mirror.baidubce.com",
        "https://docker.m.daocloud.io",
        "https://docker.nju.edu.cn",
        "https://docker.mirrors.sjtug.sjtu.edu.cn",
        "https://docker.mirrors.ustc.edu.cn",
        "https://mirror.iscas.ac.cn",
        "https://docker.rainbond.cc"
    ]
}
3. 重载配置并重启Docker服务

执行以下命令使配置文件生效:

代码语言:javascript

复制代码
sudo systemctl daemon-reload

然后重启Docker服务:

复制代码
sudo systemctl restart docker
4. 验证镜像加速器是否生效

通过以下命令检查Docker的当前配置信息:

perl 复制代码
docker info | grep Registry

你应该会看到配置的镜像源列表。如果一切正常,重新尝试拉取镜像:

复制代码
docker pull hello-world
5. 其他注意事项

如果上述方法仍无法解决问题,可以尝试以下操作:

  • 检查防火墙和安全组配置,确保允许访问Docker所需的网络端口(通常是443端口)。
  • 更新Docker版本,以避免可能的兼容性问题:
sql 复制代码
sudo yum update docker-ce
  • 更换其他可用的镜像加速器。

总结

通过修改Docker的配置文件并使用国内的镜像加速器,可以有效解决Docker拉取镜像失败的问题。如果问题仍未解决,建议进一步检查网络环境或咨询相关技术支持。

相关推荐
IT_陈寒2 小时前
Python的GIL让我多写了500行代码
前端·人工智能·后端
IT爱学堂4 小时前
精讲软件设计师(软考中级)一站式通关课_实战课程_慕课网
后端
战天战地站房顶4 小时前
在 Windows Docker 中部署 PostgreSQL 17 + pgvector 完整指南
后端
卷无止境4 小时前
FastAPI Guard 全解析,从概念到工程落地的实战指南
后端·python
卷无止境4 小时前
FastAPI Users 全面解析:概念、原理与工程实战
后端·python
程序员爱钓鱼4 小时前
Go switch 详解
后端·面试·go
程序员爱钓鱼4 小时前
Rust Struct结构体详解:定义自己的复杂数据类型
后端·面试·rust
风流 少年4 小时前
Spring AI 2.0:MCP
java·后端·spring
北斗落凡尘5 小时前
LangGraph 入门实战(7)
后端·langchain
uzong5 小时前
业务新老系统数据迁移-负责人经验总结和复盘
后端