由于 Docker Hub 在某些地区可能无法正常访问,可以通过配置阿里云的镜像加速器来解决这个问题。

常用的容器镜像加速地址

##腾讯
https://mirror.ccs.tencentyun.com
##网易
https://hub-mirror.c.163.com

没有配置之前的使用状态

Docker Hub 代理到国内大厂地址做加速访问_docker

配置前docker  检查如下

Docker Hub 代理到国内大厂地址做加速访问_Nginx_02

一、配置阿里云镜像加速器

  1. 注册并登录阿里云账号: 访问阿里云官网(https://www.aliyun.com),注册并登录你的账号。
  2. 获取镜像加速器地址: 登录后,访问阿里云容器镜像服务,在“镜像加速器”页面获取你的加速器地址,例如:https://<你的加速器地址>.mirror.aliyuncs.com
  3. 配置 Docker 使用镜像加速器:
    编辑 Docker 的配置文件 daemon.json,添加镜像加速器地址。这个文件通常位于 /etc/docker/daemon.json。如果该文件不存在,可以新建一个。
mkdir -p /etc/docker
cat > /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["ckdhnbk9.mirror.aliyuncs.com"]
}
EOF
  1. 重启 Docker 服务:
systemctl daemon-reload
systemctl restart docker

二、下载 Nginx 镜像

  1. 验证配置: 确认 Docker 镜像加速器配置成功,执行以下命令,检查 Docker 的配置信息:
docker info

Docker Hub 代理到国内大厂地址做加速访问_docker_03

你应该能在输出的 Registry Mirrors 部分看到配置的阿里云加速器地址。

  1. 拉取 Nginx 镜像:
docker pull nginx

由于配置了镜像加速器,Docker 会通过阿里云的镜像源来拉取 Nginx 镜像,加快下载速度并解决被墙问题。

Docker Hub 代理到国内大厂地址做加速访问_docker hub 加速_04

三、完整bash脚本

以下是一个完整的示例,包括所有命令,提供阿里、腾讯、网易三个厂商加速地址:

# 创建 Docker 配置目录(如果不存在)
mkdir -p /etc/docker

# 创建并编辑 daemon.json 文件,配置阿里云镜像加速器
cat > /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": [
  "https://ckdhnbk9.mirror.aliyuncs.com",
  "https://mirror.ccs.tencentyun.com",
   "https://hub-mirror.c.163.com"]
}
EOF

# 重新加载并重启 Docker 服务
systemctl daemon-reload
systemctl restart docker

# 检查 Docker 信息,确认配置成功
docker info

# 拉取 Nginx 镜像
docker pull nginx

也可以替换为你从阿里云容器镜像服务获取的加速器地址,或者你信任的容器镜像源。通过这些步骤,你应该能够正常下载 Nginx 镜像并解决 Docker Hub 被墙的问题。