在当今软件开发的世界中,Docker 技术已经成为了不可或缺的一部分。然而,最近由于ZC的原因,国内的知名公开镜像源失效了,许多开发者在使用 Docker 镜像时常常面临一个问题:镜像拉取速度往往较慢,有些镜像无法拉取。为了解决这一问题,大佬技术爬爬虾写了名为 docker_image_pusher 的开源项目,它利用 Github Action 将国外的 Docker 镜像转存到阿里云私有仓库,以提供给国内服务器使用,免费且易于使用。今天我们就介绍下如何将国外的docker镜像转存到自己的阿里云镜像仓库。
_20240618214317.jpg
配置阿里云docker镜像仓库
- 登录阿里云容器镜像服务
首先我们需要登录到阿里云容器镜像服务 cr.console.aliyun.com/
_20240618205102.jpg
个人实例可以免费创建3个命名空间,300个镜像,对于我们个人来说已经足够了。
- 创建命令空间
在个人实例下创建一个命名空间,我们需要记住此处创建的命令空间,后边会用到。
_20240618210240.jpg
- 设置凭证
在访问凭证中设置固定密码,我们需要记住密码,以及此处的用户名和仓库地址,后边会用到。
_20240618205814.jpg
docker_image_pusher
项目简介
项目地址:github.com/tech-shrimp...
使用Github Action将国外的Docker镜像转存到阿里云私有仓库,供国内服务器使用,免费易用
Fork项目
登录github,Fork项目 github.com/tech-shrimp...
配置环境变量
点击 Settings
-> Secret and variables
-> Actions
-> New Repository secret
,依次将我们之前配置的阿里云容器镜像服务的值配置到此处:
- ALIYUN_NAME_SPACE: 命名空间
- ALIYUN_REGISTRY: 仓库地址
- ALIYUN_REGISTRY_PASSWORD: 密码
- ALIYUN_REGISTRY_USER:用户名
_20240618211123.jpg
转存镜像
配置完成后修改项目的images.txt文件,将我们要转存的镜像添加上去,提交代码。
提交之后会自动进入Github Action构建,如下图所示则为构建成功了
_20240618213645.jpg
查看镜像
转存成功后我们在阿里云容器镜像服务 cr.console.aliyun.com/中就可以看到我们转存的镜像了
_20240618213905.jpg
点击镜像名称就可以看到我们的镜像地址了:
_20240618214054.jpg
总结
通过使用 docker_image_pusher 这样的开源项目,我们能够轻松地解决国内访问 Docker 镜像拉取速度慢及拉去失败的问题,同时保证了镜像的稳定性和安全性。利用 Github Action 的自动化功能,使得这一过程更加简单和高效。希望本文对你理解和使用 docker_image_pusher 有所帮助!