各位都是怎样优雅的 pull 容器镜像的

2025 年 11 月 20 日
 aiyayaya
  1. 有外网, 没有审计的情况下 docker http 代理.
  2. 有外网, 有审计, 用 cloudflare 代理, 只需要在要 pull 的容器前加上自己的域名即可, 现在已经被封禁了.
  3. 客户生产环境, 离线文件导入. 遇到 k8s 部署的, 一大堆镜像, 头皮发麻

每次大量时间浪费在处理镜像文件上面, 各位有什么优雅的方式吗? harbor 用过, 测试环境已经在用了.

2877 次点击
所在节点    DevOps
17 条回复
querysecret
2025 年 11 月 20 日
docker save -o xxx.tar xxx; docker load < xxx.tar
vczyh
2025 年 11 月 20 日
skopeo
jayeli
2025 年 11 月 20 日
sonatype/nexus3
mjjyyds
2025 年 11 月 20 日
国内鸡 pull 的时候开代理啊
totoro625
2025 年 11 月 20 日
nas 上跑的 openwrt+nexus3
腾讯云免费 CDN 反代家里的 ipv6
Lee2019
2025 年 11 月 20 日
如果镜像是固定好的,我这边是这样搞的
1.我们内部有一套 harbor
2.通过 CI ,每天/手动把需要的镜像从 harbor 导入(之前使用 skopeo,现在用 crane)到一个临时拉起的 docker registry 里面。同步完成后打一个压缩包
3.给外部(公司内部,外部客户)部署的时候,把上面说的 registry 在现场的某台服务器解压缩,然后再临时拉起一个 docker registry ,然后每台机器的 containerd 都改配置一下转发规则,统一转到你的临时 registry 里面[host."http://ip:5000(你的 registry 的地址)"]
capabilities = ["pull", "resolve", "push"]
skip_verify = true
4.开始快乐的部署你们服务吧
5.如果可以的话,环境内部带一套 harbor ,然后把镜像都导入进去后再修改 containerd 的配置,或者临时 registry 永久保留,但是注意如果运气差,registry 挂了,你的镜像又被 gc 了的话,可能有 pod 会 ImagePullBackoff
GooogIe
2025 年 11 月 20 日
@querysecret #1 save load
Nanosk
2025 年 11 月 20 日
阿里云 acr 手动推一份上去。。
pckillers
2025 年 11 月 20 日
离线单机就 docker save 与 docker load
离线部署 k8s 自然是先部署一个一个 harbor 。 把必要镜像 docker tag 、docker push 成客户的域名后再部署 k8s 啊。 不然 k8s 那一堆托管在谷歌的镜像哪怕能访问互联网 90%也拉不下来啊。
docx
2025 年 11 月 20 日
push 到国内的镜像云上
sdrzlyz
2025 年 11 月 20 日
1ms
itechify
2025 年 11 月 20 日
搭建镜像仓库,VPN 同步
leegradyllljjjj
2025 年 11 月 20 日
关键是网速要快,硬盘要猛
Bromine0x23
2025 年 11 月 21 日
crane pull
crane copy
huaxing0211
2025 年 11 月 21 日
国外鸡,pull 需要的镜像,再 push 到阿里云,国内再从阿里云 pull 。
faker5276
2025 年 11 月 21 日
duchenpaul
2025 年 11 月 21 日
自建 artifactory (可以配置 proxy)

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1173988

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX