为了账号安全,请及时绑定邮箱和手机立即绑定

在配置 Harbor 的镜像功能时遇到问题

今天,在设置 Harbor 的镜像仓库时出现了一个有趣的情况。Harbor 允许你为流行的镜像源(如 docker.io(码头工人)、ghcr.io、quay.io 和 gcr.io)创建代理仓库(proxy repository),解释一下“proxy repository”的含义,以确保读者理解。

问题是,它们只能作为独立的项目来设置,这意味着为了从ghcr.io拉取Alpine镜像到您的Harbor,你不能像之前那样操作。

下面的命令是用来从 ghcr.io/linuxcontainers/alpine 拉取最新的 Alpine 镜像:

    docker pull ghcr.io/linuxcontainers/alpine:latest

你得做:

    docker pull myharbor.org/ghcr-proxy/linuxcontainers/alpine:latest

从myharbor.org拉取最新的alpine镜像。(This command is used to pull the latest alpine image from the specified repository.)

换句话说,图像路径改变了,因此你不能在 Docker 的 registry mirrors 配置中指定 myharbor.org

{  
  "registry-mirrors": ["https://myharbor.org"]  
}

解决方法其实很简单——在Nginx中设置覆盖配置,当你从特定子域下载资源时:

    docker pull ghcr-proxy-myharbor.org/linuxcontainers/alpine:latest
```从ghcr-proxy-myharbor.org/linuxcontainers/alpine拉取最新镜像

实际上,镜像拉取来自哪里:

myharbor.org/ghcr-proxy/linuxcontainers/alpine:latest


这样,您可以在 Harbor 中为不同的项目配置多个镜像仓库。

{
"registry-mirrors": ["https://ghcr-proxy-myharbor.org", "https://docker-proxy-myharbor.org"]
}



图片将以透明方式自动通过它们被拉取,即使你运行相关命令。

```docker pull ghcr.io/linuxcontainers/alpine:latest``` 拉取最新版本的 alpine 镜像.

第一次尝试拉取图像将通过缓存Harbor。

事实上,这个问题已经存在了好几年了。在GitHub上有一个问题记录,爱好者们分享了现成的解决方案,这些解决方案可以让这件事完全自动完成。

这个配置对我没有任何问题:[这个配置](https://github.com/goharbor/harbor/issues/8082#issuecomment-2258660093)
点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
PHP开发工程师
手记
粉丝
10
获赞与收藏
54

关注作者,订阅最新文章

阅读免费教程

  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消