Docker Hub被墙如何解决

Docker Hub被墙如何解决

阅读量:
评论数:

Docker Hub被墙如何解决

前言

最近看到很多人拉不动docker镜像,连docker hub官网都进不去了,测试了一下国内全红😡

给中国网民一点小小的GFW震撼😅

docker-gfw.webp

如何解决

使用镜像加速器

看看你在用什么镜像?👀

ssh登录输入下列命令(由ChatGPT提供)

clear && docker info | { grep -q "Registry Mirrors" && echo "当前使用镜像如下:" && docker info | grep "https" || echo "未找到镜像加速器"; }

我的小主机输出如下:

当前使用镜像如下:
  https://dockerproxy.com/
  https://hub-mirror.c.163.com/

用未换过镜像的国外小鸡试一下:

未找到镜像加速器

如果你的机器在国内的话就别用官方的了。(翻墙应该行?)

更改 Docker 镜像加速器的一般步骤

  1. 连接到你的服务器或本地机器,打开终端。

  2. 使用文本编辑器打开 Docker 配置文件 daemon.json。该文件通常位于以下位置之一:

    • Linux:/etc/docker/daemon.json

  3. 如果 daemon.json 文件不存在,请创建一个新文件并添加以下内容:

    {
      "registry-mirrors": ["新镜像地址"]
    }

    "新镜像地址" 处替换为你要使用的新的镜像地址,该文件要符合json规范。

    如果有多个镜像地址可以如下所示:

    {
      "registry-mirrors": [
        "https://dockerproxy.com",
        "https://hub-mirror.c.163.com"
      ]
    }
  4. 保存并关闭 daemon.json 文件。

  5. 重新启动 Docker 服务,使配置更改生效。在终端中执行以下命令:

    systemctl daemon-reload
    systemctl restart docker
  6. 看看是否生效

    clear && docker info | { grep -q "Registry Mirrors" && echo "当前使用镜像如下:" && docker info | grep "https" || echo "未找到镜像加速器"; }

一些DockerHub镜像仓库

来源于:关于Docker官方镜像仓库被墙的一些解决办法 群晖已修复! - 我不是矿神 (imnks.com)

阿里云(杭州)             https://registry.cn-hangzhou.aliyuncs.com
阿里云(上海)             https://registry.cn-shanghai.aliyuncs.com
阿里云(青岛)             https://registry.cn-qingdao.aliyuncs.com
阿里云(北京)             https://registry.cn-beijing.aliyuncs.com
阿里云(张家口)           https://registry.cn-zhangjiakou.aliyuncs.com
阿里云(深圳)             https://registry.cn-shenzhen.aliyuncs.com
阿里云(广州)             https://registry.cn-guangzhou.aliyuncs.com
阿里云(成都)             https://registry.cn-chengdu.aliyuncs.com
腾讯云                    https://mirror.ccs.tencentyun.com
微软云                    https://dockerhub.azk8s.com
网易                      https://hub-mirror.c.163.com
docker proxy             https://dockerproxy.com
上海交通大学              https://mirror.sjtu.edu.cn/docs/docker-registry
南京大学                  https://docker.nju.edu.cn
道客 DaoCloud             https://f1361db2.m.daocloud.io
阿里云(香港)             https://registry.cn-hongkong.aliyuncs.com
阿里云(日本-东京)        https://registry.ap-northeast-1.aliyuncs.com
阿里云(新加坡)           https://registry.ap-southeast-1.aliyuncs.com
谷歌云                    https://gcr.io
官方                      https://registry.hub.docker.com

使用docker proxy代理拉取镜像

Docker Proxy介绍:多平台容器镜像代理服务,支持 Docker Hub, GitHub, Google, k8s, Quay等镜像仓库。

Docker Proxy 镜像加速使用文档

教程

前往官网:Docker Proxy 镜像加速

第一步:输入原始镜像地址获取命令

以拉取emby为例:emby/embyserver - Docker Image

右侧复制 Docker Pull Command

docker pull emby/embyserver

填入第一步,删除docker pull ,点击 获取命令 按钮

第二步:代理拉取镜像

登录ssh,将上一步获取到的命令输入以拉取镜像

docker pull dockerproxy.com/emby/embyserver:latest

第三步:重命名镜像

下载好后重命名镜像

docker tag dockerproxy.com/emby/embyserver:latest emby/embyserver:latest

第四步:删除代理镜像

docker rmi dockerproxy.com/emby/embyserver:latest

看看镜像加速服务是否失效

ssh开两个会话窗口

一个窗口随便拉个大点的镜像,另一个窗口使用ss -ntp | grep dockerd命令查看当前连接的IP是啥,再用IP反查域名,就可以知道当前使用的是哪个镜像加速器了,如果已经配置好镜像加速器却连的docker.io的ip那这个服务是不能使用的。

推荐一个学习docker的在线阅读文档:Docker — 从入门到实践

Built with Halo
主题 Stack Jimmy 设计 • 由Jiewen移植
📑共水了 93篇文章.
载入天数... 载入时分秒...
RSS Icon RSS订阅