docker - 如果注册表中不存在镜像,则私有(private) docker 注册表服务器将从 docker hub 中拉取

标签 docker docker-registry

我的团队有一个 docker 注册表服务器,当用户从注册表中提取镜像时,我想执行以下操作:

  1. 检查我的注册表中是否存在该图像。
  2. 如果是,请从我的注册表返回图像并在此结束。
  3. 如果没有,请尝试从官方 docker hub 注册表中提取镜像。将图像缓存在我的注册表中以供进一步使用,然后将其返回给用户并在此结束。

就我而言,我希望我的 docker 寄存器作为桥梁。不仅可以存储私密图片,还可以缓存图片以节省带宽。

你有什么想法吗?

最佳答案

我最近实现了这样一个用例,下面是您必须使用的配置来实现这一点。

proxy:
  remoteurl: https://registry-1.docker.io
  username: [username]
  password: [password]

将此配置添加到您将与注册表一起使用的 config.yml 文件中。

使用您的 docker hub 凭据更新上述配置。

此用例特别被称为注册表作为拉取缓存

官方 Docker 文档链接:https://docs.docker.com/registry/recipes/mirror/

关于docker - 如果注册表中不存在镜像,则私有(private) docker 注册表服务器将从 docker hub 中拉取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58058919/

相关文章:

docker - 如何将Docker容器的根目录作为NFS挂载点挂载

docker - 为什么我在此 Kubernetes 部署中收到 ErrImagePull 错误?

docker - 用于在私有(private) docker 注册表中添加/更新图像时通知的命令行

docker - 如何将私有(private)注册表证书添加到 Docker 机器

Docker 登录命令不起作用

php - 使用带有 alpine php 图像的 docker 更改 php.ini 中的值

php - 如何以Docker撰写版本 '2'格式挂载卷

mysql - 从本地主机连接到 Docker MySQL 容器?

node.js - 从主机连接到 mongo docker 容器

gitlab-ci - 如何将 docker 镜像从 gitlab-ci 发布到 docker hub