Docker 无法从 Docker Hub 拉取镜像,通常是由于 网络连接问题 或 Docker Hub 访问受限 导致

这个错误表明 Docker 无法从 Docker Hub 拉取镜像,通常是由于 网络连接问题Docker Hub 访问受限 导致的。以下是几种解决方案:


解决方案

1. 检查网络连接

bash 复制代码
# 测试 Docker Hub 连通性
curl -I https://registry-1.docker.io/v2/

# 检查 DNS 解析
nslookup registry-1.docker.io

2. 配置 Docker 镜像加速器(推荐)

在中国Docker Hub 官方源可能被限制,建议配置镜像加速器:

编辑 Docker 配置文件:

bash 复制代码
sudo nano /etc/docker/daemon.json

添加以下内容(选择其中一个或多个加速器):

json 复制代码
{
  "registry-mirrors": [
    "https://docker.m.daocloud.io",
    "https://docker.1panel.live",
    "https://hub.rat.dev",
    "https://docker.mirrors.ustc.edu.cn",
    "https://dockerpull.com",
    "https://docker.1panel.top",
    "https://docker.foreverlink.love"
  ]
}

重启 Docker:

bash 复制代码
sudo systemctl daemon-reload
sudo systemctl restart docker

3. 手动拉取镜像

配置加速器后,先单独拉取失败的镜像:

bash 复制代码
# 拉取失败的镜像
docker pull alpine/nikto:latest
docker pull zaproxy/zap-stable:latest
docker pull projectdiscovery/nuclei:latest

# 如果 alpine/nikto 找不到,尝试替代镜像
docker pull secfigo/nikto:latest

4. 修改 docker-compose 使用替代镜像

如果 alpine/nikto 镜像确实不存在或无法拉取,编辑 docker-compose.yml 修改镜像源:

yaml 复制代码
# 找到 nikto 服务部分,修改为:
  nikto:
    image: secfigo/nikto:latest  # 或其他可用镜像
    # 或者使用官方 Kali Linux 中的 nikto
    # image: kalilinux/kali-rolling:latest

5. 临时使用代理

如果你有 HTTP 代理:

bash 复制代码
# 设置环境变量
export HTTP_PROXY=http://your-proxy:port
export HTTPS_PROXY=http://your-proxy:port

# 然后重新运行
make start

6. 检查防火墙/安全软件

bash 复制代码
# 检查防火墙状态
sudo ufw status
sudo iptables -L

# 临时关闭防火墙测试(谨慎操作)
sudo ufw disable

快速排查步骤

bash 复制代码
# 1. 验证 Docker 是否正常运行
docker info

# 2. 测试拉取一个简单的镜像
docker pull hello-world

# 3. 如果上面成功,尝试拉取失败的特定镜像
docker pull alpine/nikto:latest

# 4. 查看详细错误信息
docker pull alpine/nikto:latest 2>&1

如果问题持续

请提供以下信息以便进一步诊断:

bash 复制代码
# 查看 Docker 版本
docker version

# 查看系统信息
uname -a

# 测试网络连通性
ping -c 4 128.242.245.244
curl -v https://registry-1.docker.io/v2/

最可能的解决方案是配置 Docker 镜像加速器(方案2),这通常能解决中国大陆访问 Docker Hub 的问题。

相关推荐
从此以后自律8 分钟前
项目 Docker + Nginx 云端完整部署细节
nginx·docker·容器
donoot17 小时前
一次 Nginx 502 问题的深度排查:从 SELinux 到容器网络
nginx·docker·selinux·反向代理·502 bad gateway
Sagittarius_A*18 小时前
Docker:渗透前置容器化核心基础
运维·安全·docker·容器
吠品20 小时前
PHP里取月份最后一天的几种方式
java·开发语言·eureka
名字还没想好☜21 小时前
Docker 多阶段构建:把镜像从 1.2GB 砍到 15MB
运维·docker·容器·多阶段构建·镜像优化
花和满楼1 天前
K8s 1.36 ImageVolume GA:OCI 镜像不再只能跑容器
java·容器·kubernetes
生活爱好者!1 天前
NAS还能玩游戏?部署一款 WebGL 3D 赛车小游戏
游戏·docker·容器·玩游戏
曦月合一1 天前
本地电脑部署docker,及各种组件(nginx、mysql、redis、mongo、minio、java)
docker·windows10 专业版
hj2862511 天前
Docker 核心知识点整理(网络 + Dockerfile + 原理 + 命令)
网络·docker·容器
梦想的颜色1 天前
【Docker原理】Docker 容器一文打尽:生命周期、环境管控、迁移备份、日志进程排查、垃圾清理
运维·docker·容器·容器生命周期·容器日志排查·容器迁移备份·容器进程管理