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 的问题。

相关推荐
天朝八阿哥6 小时前
使用Docker+vscode搭建离线的go开发调试环境
后端·docker·visual studio code
阿虎儿1 天前
Docker安装(非sudo用户可用)
docker
fetasty2 天前
rustfs加picgo图床搭建
docker
蝎子莱莱爱打怪3 天前
GitLab CI/CD + Docker Registry + K8s 部署完整实战指南
后端·docker·kubernetes
小p4 天前
docker学习7:docker 容器的通信方式
docker
小p4 天前
docker学习5:提升Dockerfile水平的5个技巧
docker
小p4 天前
docker学习3:docker是怎么实现的?
docker
小p5 天前
docker学习: 2. 构建镜像Dockerfile
docker
小p6 天前
docker学习: 1. docker基本使用
docker
崔小汤呀6 天前
Docker部署Nacos
docker·容器