如何解决带有Harbor的Docker Hub缓存
我需要从我的Harbor“代理缓存”项目中的Docker中心提取缓存Docker映像。因此,我已经配置了一个带有代理缓存选项的项目。 “注册表”部分还添加了一个新的注册表端点,其提供程序为“ Docker Hub”。我将以下配置添加到了docker守护进程中。
example
my cache project name = proxy
i need to pull httpd:latest
虽然我正在从Docker集线器中提取图像,但它并未缓存在我的Harbor项目中。需要帮助解决此问题以及我的要求如何满足港口要求。
Int64Index: 3572 entries
Data columns (total 58 columns):
This 方法也不起作用
解决方法
我可以回答您的部分问题。但是第2部分的答案是你做不到。我可以将问题链接给您,向您显示他们由于技术限制而明确选择不这样做。好消息是他们意识到这仍然是社区想要的东西。
---第1部分
您可能不知道的一件事,就是hub.docker上的仓库,它没有项目组(例如docker pull nginx
),但仍然需要在您的港口中匹配一个项目。它将与项目名称library
匹配。因此,请确保您有一个名为library
的项目。没有这个library
项目可能不会影响通过缓存,但是一定会影响复制。
我的设置包含:
包含网址:harbor.mydomain.com
项目:
- 图书馆
- cache_proxy-hub-docker
下面的例子可以帮助我
docker pull harbor.mydomain.com/cache_proxy-hub-docker/goharbor/redis-photon:v2.1.0
v2.1.0: Pulling from cache_proxy-hub-docker/goharbor/redis-photon
b2823a5a3d08: Pull complete
...omitted...
369af38cd511: Pull complete
Digest: sha256:11bf4d11d81ef582401928b85aa2e325719b125821a578c656951f48d4c716be
请记住,对于docker pull ngninx
之类的东西,您必须像实际library/nginx
那样做
docker pull harbor.mydomain.com/cache_proxy-hub-docker/library/nginx
Using default tag: latest
latest: Pulling from cache_proxy-hub-docker/library/nginx
d121f8d1c412: Pull complete
...ommitted...
Digest: sha256:fc66cdef5ca33809823182c9c5d72ea86fd2cef7713cf3363e1a0b12a5d77500
当我查看项目/ cache_proxy-hub-docker时,我看到:
- cache_proxy-hub-docker / library / nginx
- cache_proxy-hub-docker / goharbor / redis-photon
还请记住,带有前缀的pull命令也将成为在pull之后该图像在您的计算机上的名称。您必须将其重新标记为您期望的样子。这就是docker daemon解决方案如此吸引人的原因...
---第2部分
我在同一问题上四处奔波。最后,我怀疑他们没有以这种方式实现它。没错:
https://github.com/goharbor/harbor/issues/8082#issuecomment-698012277
问题:
是否仍然可以将Harbor 2.1配置为透明的Docker Hub镜像? ...
answer:
目前还不行……我们在2.1中找不到足够好的解决方案,但我们知道此要求。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。