当前位置: 首页 > news >正文

阿里云配置了加速器还是访问不了docker.io的解决方案。

  1. Docker Hub 直连超时 - 无法直接访问 registry-1.docker.io
  2. 阿里云镜像正常 - xxxx.mirror.aliyuncs.com 可以正常访问(返回 HTTP/2 200)

这说明:

  • 你的 ECS 到 Docker Hub 的直连被阻断(可能是网络策略或防火墙)
  • 阿里云镜像加速器本身是正常的

解决方案:

1. 禁用 IPv6(避免连接 IPv6 地址导致超时):

bash

# 临时禁用 IPv6
sudo sysctl -w net.ipv6.conf.all.disable_ipv6=1
sudo sysctl -w net.ipv6.conf.default.disable_ipv6=1# 永久禁用(编辑配置文件)
sudo tee -a /etc/sysctl.conf <<-'EOF'
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
EOFsudo sysctl -p

2. 更新 Docker 配置,使用国内镜像源:

bash

sudo tee /etc/docker/daemon.json <<-'EOF'
{"registry-mirrors": ["https://xxxxx.mirror.aliyuncs.com","https://docker.m.daocloud.io","https://dockerproxy.com"],"ipv6": false,"log-driver": "json-file","log-opts": {"max-size": "100m"}
}
EOF

3. 重启 Docker:

bash

sudo systemctl daemon-reload
sudo systemctl restart docker
docker info | grep -A 5 "Registry Mirrors"

4. 重新尝试拉取镜像:

bash

docker pull maven:3.8.6-amazoncorretto-17

5. 如果还是不行,使用镜像代理站:

bash

# 直接从 DaoCloud 镜像站拉取
docker pull docker.m.daocloud.io/library/maven:3.8.6-amazoncorretto-17# 然后重新打标签
docker tag docker.m.daocloud.io/library/maven:3.8.6-amazoncorretto-17 maven:3.8.6-amazoncorretto-17

试试禁用 IPv6 后再拉取镜像,应该就可以了。如果还有问题,把执行结果发给我

分析。

1. 检查镜像加速器是否正常工作

bash

# 测试阿里云镜像是否可访问
curl -I https://xxxx.mirror.aliyuncs.com/v2/# 如果返回 401 Unauthorized 说明镜像服务是正常的

2. 尝试使用其他国内镜像源

编辑 Docker 配置文件:

bash

sudo vim /etc/docker/daemon.json

替换或添加以下内容(多个镜像源提高成功率):

json

{"registry-mirrors": ["https://xxx.mirror.aliyuncs.com","https://docker.m.daocloud.io","https://docker.nju.edu.cn","https://dockerproxy.com"]
}

重启 Docker 服务:

bash

sudo systemctl daemon-reload
sudo systemctl restart docker

3. 检查网络和防火墙设置

bash

# 检查是否能访问 Docker Hub
curl -I https://registry-1.docker.io# 检查 DNS 解析
nslookup registry-1.docker.io# 如果 DNS 有问题,可以修改 /etc/resolv.conf
echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf
echo "nameserver 223.5.5.5" | sudo tee -a /etc/resolv.conf

4. 检查阿里云 ECS 安全组规则

确保出站规则允许访问:

  • 端口 443 (HTTPS)
  • 目标地址不受限制

5. 直接使用阿里云容器镜像服务

如果你有阿里云账号,可以使用阿里云容器镜像服务搜索并拉取镜像:

bash

# 先在阿里云容器镜像服务搜索 maven 镜像
# 然后使用阿里云的完整路径拉取
docker pull registry.cn-hangzhou.aliyuncs.com/library/maven:3.8.6-amazoncorretto-17

6. 临时解决方案:增加超时时间

修改 Docker 配置:

json

{"registry-mirrors": ["https://dz4ys44m.mirror.aliyuncs.com"],"max-concurrent-downloads": 3,"max-concurrent-uploads": 3,"max-download-attempts": 5
}

nslookup 命令不存在,我们可以用其他方式测试。先安装工具或使用替代命令:

方案1:使用 dighost 命令(如果有)

bash

# 尝试 dig
dig registry-1.docker.io# 或者 host
host registry-1.docker.io

方案2:安装 bind-utils

bash

# CentOS/RHEL
sudo yum install -y bind-utils# 安装后再执行
nslookup registry-1.docker.io

方案3:直接用 pingcurl 测试

bash

# 测试 DNS 解析和网络连通性
ping -c 4 registry-1.docker.io# 测试 HTTPS 连接
curl -v https://registry-1.docker.io# 测试阿里云镜像
curl -v https://xxxx.mirror.aliyuncs.com/v2/

建议直接执行以下步骤:

1. 先更新镜像配置(最重要):

bash

sudo tee /etc/docker/daemon.json <<-'EOF'
{"registry-mirrors": ["https://docker.m.daocloud.io","https://dockerproxy.com","https://docker.nju.edu.cn","https://xxx.mirror.aliyuncs.com"]
}
EOF

2. 重启 Docker:

bash

sudo systemctl daemon-reload
sudo systemctl restart docker

3. 验证配置:

bash

docker info | grep -A 5 "Registry Mirrors"

4. 再次尝试拉取镜像:

bash

docker pull maven:3.8.6-amazoncorretto-17
http://www.dtcms.com/a/516243.html

相关文章:

  • 四川星星建设集团有限公司网站天津建设工程信息王
  • 网站创建人是网站下做二级域名
  • vivado综合报错,但没有明确报错信息
  • 深度解析 DeepSeek-OCR 的“光学压缩”革命
  • 贪心 --- 前篇
  • Android Studio新手开发第二十九天
  • STM32H743-ARM例程26-TCP_CLIENT
  • 上海先进网站建设公司凡科网站教程
  • 【ffmpeg】win11 python 使用ffmpeg 切割音频
  • macOS环境安装jupyter notebook(极简版)
  • 04_线性回归
  • 自然语言处理实战——基于策略迭代算法的餐厅预订对话系统
  • PHP双轨直销企业会员管理系统/购物直推系统/支持人脉网络分销系统源码
  • 拼接“音频片段”生成完整文件
  • 电影视频网站建设费用wordpress搜索增强
  • 营销型网站建设ppt模板wordpress碎语插件
  • 灵活用工平台如何助力中小企业降本增效:案例分析
  • 【题解】P2216 [HAOI2007] 理想的正方形 [单调队列]
  • UE基础操作2
  • Java IDEA学习之路:第五、六周课程笔记归纳
  • 亚马逊云代理商:怎么使用AWS WAF?
  • 茂名建设企业网站建网站为什么要租空间
  • SOAP 实例详解
  • 【C++】多态深度解析:虚函数表与动态绑定的奥秘
  • 腾讯云网站建设教程企业名录app
  • 重庆做网站有哪些医疗网站建设
  • 语音识别技术之科大讯飞在线API
  • 从案例到实践:仓颉编程语言入门核心知识点全解析
  • VR环境中的概念
  • 闽侯县住房和城乡建设局官方网站猪八戒官网做网站专业吗