DockerHub被禁掉的应对之法

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: 在DockerHub被禁用或访问受限的情况下,可以选择使用其他公共镜像仓库、本地私有镜像仓库或镜像加速器。这些替代方案不仅能够保证容器化应用的正常运行,还可以根据具体需求提供不同的功能和服务。确保按照文档和指南进行配置,以实现最佳效果和性能。

DockerHub被禁用后的应对方案

1. 使用其他镜像仓库

如果DockerHub无法访问,可以考虑使用其他公共或私有的镜像仓库。以下是一些流行的替代品:

1.1 阿里云镜像仓库

阿里云提供高可用性的容器镜像服务,可以作为DockerHub的替代品。

  • 注册并登录阿里云账号
  • 创建镜像仓库:在阿里云容器镜像服务(Container Registry)中创建新的镜像仓库。
  • 推送镜像:将本地镜像推送到阿里云镜像仓库。
docker login --username=your-username registry.cn-hangzhou.aliyuncs.com
docker tag your-image:tag registry.cn-hangzhou.aliyuncs.com/your-repo/your-image:tag
docker push registry.cn-hangzhou.aliyuncs.com/your-repo/your-image:tag
AI 代码解读

1.2 腾讯云镜像仓库

腾讯云也提供类似的容器镜像服务。

  • 注册并登录腾讯云账号
  • 创建镜像仓库:在腾讯云容器镜像服务中创建新的镜像仓库。
  • 推送镜像:将本地镜像推送到腾讯云镜像仓库。
docker login --username=your-username ccr.ccs.tencentyun.com
docker tag your-image:tag ccr.ccs.tencentyun.com/your-repo/your-image:tag
docker push ccr.ccs.tencentyun.com/your-repo/your-image:tag
AI 代码解读

1.3 GitHub Container Registry

GitHub Container Registry是GitHub提供的容器镜像服务,集成了GitHub的CI/CD流程。

  • 登录GitHub账号
  • 创建GitHub Actions workflow:自动构建和推送镜像到GitHub Container Registry。
name: Publish Docker image

on:
  push:
    branches:
      - main

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
    - name: Check out the code
      uses: actions/checkout@v2
    - name: Log in to the Container registry
      run: echo "$<ruby>secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${
  { github.actor }} --password-stdin
    - name<rp> (</rp><rt>Build the Docker image
      run: docker build -t ghcr.io/${
  { github.repository</rt><rp>) </rp></ruby>/my-image:latest .
    - name: Push the Docker image
      run: docker push ghcr.io/${
  { github.repository }}/my-image:latest
​
AI 代码解读

2. 设置本地镜像仓库

如果需要完全自主控制镜像,可以搭建本地私有镜像仓库。

2.1 使用Docker Registry

Docker Registry是Docker官方提供的开源镜像仓库。

  • 启动Docker Registry
docker run -d -p 5000:5000 --name registry registry:2
AI 代码解读
  • 推送镜像到本地Registry
docker tag your-image:tag localhost:5000/your-image:tag
docker push localhost:5000/your-image:tag
AI 代码解读

2.2 使用Harbor

Harbor是一个企业级的Docker镜像仓库,由VMware开源。

  • 安装Harbor:可以通过Harbor官网(goharbor.io)下载并安装。
  • 配置和启动Harbor:按照官方文档进行配置和启动。
  • 推送镜像到Harbor:与Docker Registry的操作类似。

3. 使用镜像加速器

为了加快镜像的拉取速度,可以使用镜像加速器。国内的一些云服务商提供了镜像加速服务。

3.1 阿里云加速器

  • 配置Docker加速器
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://<your-mirror>.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
​
AI 代码解读

3.2 腾讯云加速器

  • 配置Docker加速器
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://mirror.ccs.tencentyun.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
​
AI 代码解读

思维导图

- DockerHub被禁用后的应对方案
  - 使用其他镜像仓库
    - 阿里云镜像仓库
    - 腾讯云镜像仓库
    - GitHub Container Registry
  - 设置本地镜像仓库
    - 使用Docker Registry
    - 使用Harbor
  - 使用镜像加速器
    - 阿里云加速器
    - 腾讯云加速器
​
AI 代码解读

结论

在DockerHub被禁用或访问受限的情况下,可以选择使用其他公共镜像仓库、本地私有镜像仓库或镜像加速器。这些替代方案不仅能够保证容器化应用的正常运行,还可以根据具体需求提供不同的功能和服务。确保按照文档和指南进行配置,以实现最佳效果和性能。

相关实践学习
通过容器镜像仓库与容器服务快速部署spring-hello应用
本教程主要讲述如何将本地Java代码程序上传并在云端以容器化的构建、传输和运行。
Kubernetes极速入门
Kubernetes(K8S)是Google在2014年发布的一个开源项目,用于自动化容器化应用程序的部署、扩展和管理。Kubernetes通常结合docker容器工作,并且整合多个运行着docker容器的主机集群。 本课程从Kubernetes的简介、功能、架构,集群的概念、工具及部署等各个方面进行了详细的讲解及展示,通过对本课程的学习,可以对Kubernetes有一个较为全面的认识,并初步掌握Kubernetes相关的安装部署及使用技巧。本课程由黑马程序员提供。 &nbsp; 相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情:&nbsp;https://www.aliyun.com/product/kubernetes
目录
相关文章
《docker基础篇:2.Docker安装》包括前提说明、Docker的基本组成、Docker平台架构图解(架构版)、安装步骤、阿里云镜像加速、永远的HelloWorld、底层原理
《docker基础篇:2.Docker安装》包括前提说明、Docker的基本组成、Docker平台架构图解(架构版)、安装步骤、阿里云镜像加速、永远的HelloWorld、底层原理
706 90
docker私有仓库harbor安装
通过以上步骤,您可以成功在企业内部安装和配置Harbor私有仓库,方便地管理和分发Docker镜像。Harbor不仅提供了基础的镜像管理功能,还增强了安全性、身份管理和审计功能,使其成为企业级容器镜像管理的理想选择。
344 22
从 Docker Hub 拉取镜像受阻?这些解决方案帮你轻松应对
最近一段时间 Docker 镜像一直是 Pull 不下来的状态,感觉除了挂🪜,想直连 Docker Hub 是几乎不可能的。更糟糕的是,很多原本可靠的国内镜像站,例如一些大厂和高校运营的,也陆续关停了,这对我们这些个人开发者和中小企业来说是挺难受的。之前,通过这些镜像站,我们可以快速、方便地获取所需的 Docker 镜像,现在这条路也不行了。感觉这次动作不小,以后想直接访问 Docker Hub 是不可能了。所以我们得想办法搭建自己的私有镜像仓库。
从 Docker Hub 拉取镜像受阻?这些解决方案帮你轻松应对
2024 年 docker 提示index.docker.io
在使用 Docker 时遇到连接 Docker Hub 的错误,即使配置了阿里源、清华源等国内镜像源仍无法解决。错误提示为连接超时或主机未响应。最终发现许多 Docker Hub 已关闭,阿里源也仅限于阿里产品内使用。解决方法是搭建私有 Docker Hub。
1384 5
Docker-基础(数据卷、自定义镜像、Compose)
通过数据卷实现持久化存储,通过自定义镜像满足特定需求,通过Docker Compose方便地管理多容器应用
157 27
Docker 镜像加速器配置指南
dockerhub加速器失败,使用第三方加速器
docker pull mysql:8.0.26提示Error response from daemon: Get “https://registry-1.docker.io/v2/“: EOF错误
docker pull mysql:8.0.26提示Error response from daemon: Get “https://registry-1.docker.io/v2/“: EOF错误
Docker Hub 镜像仓库
前言 Docker Hub 是 Docker 公司提供的官方公共 Docker 镜像注册表,允许用户存储、分享和获取 Docker 镜像。在 Docker Hub 上,你可以找到许多官方和社区维护的 Docker 镜像。 搜索镜像 登录后,你可以使用 Docker Hub 的搜索功能来查找感兴趣的镜像。你可以在搜索栏中输入关键词,然后浏览结果。 创建存储库 注册或登录到 Docker Hub,选择“创建存储库”按钮,选择公有库或者私有库。
9251 1
《docker基础篇:5.本地镜像发布到阿里云》
《docker基础篇:5.本地镜像发布到阿里云》
495 79
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等

登录插画

登录以查看您的控制台资源

管理云资源
状态一览
快捷访问