国内docker公开镜像站的关闭!别急,docker_image_pusher 使用Github Action将国外的Docker镜像转存到阿里云私有仓库

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: 通过使用 docker_image_pusher 这样的开源项目,我们能够轻松地解决国内访问 Docker 镜像拉取速度慢及拉去失败的问题,同时保证了镜像的稳定性和安全性。利用 Github Action 的自动化功能,使得这一过程更加简单和高效。

在当今软件开发的世界中,Docker 技术已经成为了不可或缺的一部分。然而,最近由于ZC的原因,国内的知名公开镜像源失效了,许多开发者在使用 Docker 镜像时常常面临一个问题:镜像拉取速度往往较慢,有些镜像无法拉取。为了解决这一问题,大佬技术爬爬虾写了名为 docker_image_pusher 的开源项目,它利用 Github Action 将国外的 Docker 镜像转存到阿里云私有仓库,以提供给国内服务器使用,免费且易于使用。今天我们就介绍下如何将国外的docker镜像转存到自己的阿里云镜像仓库。

_20240618214317.jpg

配置阿里云docker镜像仓库

  • 登录阿里云容器镜像服务

首先我们需要登录到阿里云容器镜像服务 https://cr.console.aliyun.com/

_20240618205102.jpg

个人实例可以免费创建3个命名空间,300个镜像,对于我们个人来说已经足够了。

  • 创建命令空间

在个人实例下创建一个命名空间,我们需要记住此处创建的命令空间,后边会用到。

_20240618210240.jpg

  • 设置凭证

在访问凭证中设置固定密码,我们需要记住密码,以及此处的用户名和仓库地址,后边会用到。

_20240618205814.jpg

docker_image_pusher

项目简介

项目地址:https://github.com/tech-shrimp/docker_image_pusher

使用Github Action将国外的Docker镜像转存到阿里云私有仓库,供国内服务器使用,免费易用

  • 支持DockerHub, gcr.io, k8s.io, ghcr.io等任意仓库
  • 支持最大40GB的大型镜像
  • 使用阿里云的官方线路,速度快

Fork项目

登录github,Fork项目 https://github.com/tech-shrimp/docker_image_pusher

配置环境变量

点击 Settings -> Secret and variables -> Actions -> New Repository secret,依次将我们之前配置的阿里云容器镜像服务的值配置到此处:

  • ALIYUN_NAME_SPACE: 命名空间
  • ALIYUN_REGISTRY: 仓库地址
  • ALIYUN_REGISTRY_PASSWORD: 密码
  • ALIYUN_REGISTRY_USER:用户名

_20240618211123.jpg

转存镜像

配置完成后修改项目的images.txt文件,将我们要转存的镜像添加上去,提交代码。
_20240618213423.jpg

提交之后会自动进入Github Action构建,如下图所示则为构建成功了

_20240618213645.jpg

查看镜像

转存成功后我们在阿里云容器镜像服务 https://cr.console.aliyun.com/中就可以看到我们转存的镜像了

_20240618213905.jpg

点击镜像名称就可以看到我们的镜像地址了:

_20240618214054.jpg

总结

通过使用 docker_image_pusher 这样的开源项目,我们能够轻松地解决国内访问 Docker 镜像拉取速度慢及拉去失败的问题,同时保证了镜像的稳定性和安全性。利用 Github Action 的自动化功能,使得这一过程更加简单和高效。希望本文对你理解和使用 docker_image_pusher 有所帮助!

相关实践学习
Docker镜像管理快速入门
本教程将介绍如何使用Docker构建镜像,并通过阿里云镜像服务分发到ECS服务器,运行该镜像。
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
目录
相关文章
|
9天前
|
敏捷开发 Kubernetes 测试技术
阿里云云效产品使用问题之 拉取阿里云acr仓库的镜像时,配置内网地址还是公网地址
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
9天前
|
JavaScript 前端开发 数据安全/隐私保护
阿里云云效操作报错合集之流水线中获取不到CI_COMMIT_REF_NAME变量,导致docker镜像打包失败,什么原因
本合集将整理呈现用户在使用过程中遇到的报错及其对应的解决办法,包括但不限于账户权限设置错误、项目配置不正确、代码提交冲突、构建任务执行失败、测试环境异常、需求流转阻塞等问题。阿里云云效是一站式企业级研发协同和DevOps平台,为企业提供从需求规划、开发、测试、发布到运维、运营的全流程端到端服务和工具支撑,致力于提升企业的研发效能和创新能力。
|
9天前
|
敏捷开发 API 持续交付
阿里云云效产品使用问题之流水线编译docker时,如何把已经定义好的token传入编译参数
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
阿里云云效产品使用问题之流水线编译docker时,如何把已经定义好的token传入编译参数
|
2天前
|
分布式计算 数据可视化 大数据
阿里云大牛熬夜整理的Python大数据小抄,GitHub星标125K!
Python 是一种流行的编程语言,在大数据领域有广泛的应用。Python 拥有丰富的库和工具,可用于数据处理、分析和可视化。 在大数据处理方面,Python 可以与 Hadoop、Spark 等大数据框架集成,实现大规模数据的处理和分析。它也适用于数据清洗、数据转换、数据挖掘等任务。 此外,Python 的数据分析库如 Pandas、NumPy 和 Matplotlib 等,提供了强大的数据处理和可视化功能,使得数据分析变得更加简单和高效。
|
9天前
|
持续交付 开发工具 git
阿里云云效产品使用问题之在云效代码域中gitlab使用docker安装的,迁移时遇到“获取企业信息失败”,是什么原因
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
2天前
|
Linux Docker 容器
Docker02--搭建Linux环境,配置Docker,docker images无法访问,因为docker没有启动,阿里云镜像加速器免费的
Docker02--搭建Linux环境,配置Docker,docker images无法访问,因为docker没有启动,阿里云镜像加速器免费的
|
9天前
|
缓存 前端开发 Java
阿里云云效操作报错合集之在打包镜像时提示错误,可能是什么导致的
本合集将整理呈现用户在使用过程中遇到的报错及其对应的解决办法,包括但不限于账户权限设置错误、项目配置不正确、代码提交冲突、构建任务执行失败、测试环境异常、需求流转阻塞等问题。阿里云云效是一站式企业级研发协同和DevOps平台,为企业提供从需求规划、开发、测试、发布到运维、运营的全流程端到端服务和工具支撑,致力于提升企业的研发效能和创新能力。
|
9天前
|
缓存 运维 Devops
阿里云云效操作报错合集之在构建过程中,Docker尝试从缓存中获取某个文件(或计算缓存键)时遇到了问题,该如何处理
本合集将整理呈现用户在使用过程中遇到的报错及其对应的解决办法,包括但不限于账户权限设置错误、项目配置不正确、代码提交冲突、构建任务执行失败、测试环境异常、需求流转阻塞等问题。阿里云云效是一站式企业级研发协同和DevOps平台,为企业提供从需求规划、开发、测试、发布到运维、运营的全流程端到端服务和工具支撑,致力于提升企业的研发效能和创新能力。
|
9天前
|
Java Maven Android开发
安卓项目使用阿里云镜像加速构建过程
安卓项目使用阿里云镜像加速构建过程
8 0
|
8天前
|
弹性计算 安全 前端开发
阿里云服务器ECS通用型、计算型和内存型详细介绍和性能参数表
阿里云ECS实例有计算型(c)、通用型(g)和内存型(r)三种,主要区别在于CPU和内存比例。计算型CPU内存比1:2,如2核4G;通用型为1:4,如2核8G;内存型为1:8,如2核16G。随着技术迭代,有第五代至第八代产品,如c7、g5、r8a等。每代实例在CPU型号和主频上相同,但性能有所提升。实例性能参数包括网络带宽、收发包能力、连接数等。具体应用场景如计算型适合高网络包收发、通用型适合企业级应用,内存型适合内存数据库等。详细信息可参阅阿里云ECS页面。