我写了一个Docker镜像智能打包离线包的GitHub工作流文件,分享给大家

这个工作流可以帮助你自动拉取指定的Docker镜像,并根据情况打包成离线包,特别适合需要离线部署或备份镜像的场景。整个流程简单高效,能够自动处理各种不同需求。

以下是该工作流的运行逻辑:

1.在运行工作流时,你可以输入一个或多个镜像名称,工作流会自动拉取。如果你不提供发布标签,默认会使用当天日期。

2.工作流自动配置支持多架构镜像(比如amd64、arm64等),确保你可以拉取并打包不同平台的镜像。

3.在镜像拉取后,系统会智能判断,如果是单个镜像就直接保存为.tar文件。如果是多个镜像就打包成一个.tar.gz压缩包,方便传输和管理。

4.工作流会自动检查文件大小,文件较小则直接上传到GitHub Release。如果文件较大,则通过工件上传,确保你能顺利下载。

5.在完成后打包后,系统会清理生成的中间文件,节省空间。

通过这个工作流,Docker镜像打包的整个过程都能自动化处理,支持多架构、多镜像组合,无论你是要备份还是离线部署都非常方便。

最后贴上项目的GitHub地址

https://github.com/foss-android/docker2tar

179 个赞

大佬高产啊 :tieba_013:

12 个赞

既给力
又高产

2 个赞

大佬厉害啊:+1:

7 个赞

牛啊,都是好东西(òωó):+1:

2 个赞

好东西,感谢大佬分享

3 个赞

智能,我还以为真智能呢

4 个赞

感谢大佬分享

已start!

7 个赞

好东西,虽然暂时用不上

4 个赞

大佬牛逼 + 1

2 个赞

暂时用不上,先mark~

牛啊,都是好东西

1 个赞

怎么拉指定架构的镜像呢

3 个赞

我这边建构时安装了QEMU,获得了多架构支持,拉取的话你自行确定一下标签

1 个赞

有的镜像不同架构有例如:arm的区分但是有很多镜像都达到一个标签里了,这样就不能通过标签区分了,所以如果再加个参数用来指定架构就好了

2 个赞

我这边打包的兼容性很强!属于那种只有一个标签的就更简单了,简单粗暴。

12 个赞


比如这种的镜像要拉不同arch的怎么拉呀

你要想啦哪一个架构的,直接指定标签不就行了,由它打包出来的离线包肯定就兼容啊!

还是用刚才的镜像举例,这个镜像的标签是 3.9.20-bullseye 指定python:3.9.20-bullseye 直接pull拉去的不就是amd64的镜像么