2.5.4. 覆盖 Registry 配置
您可以使用自己的自定义配置覆盖集成 registry 的默认配置,默认覆盖正在运行的 registry 容器中的 /config.yml 中的默认配置。
此文件中的上游配置选项也可使用环境变量覆盖。middleware 部分是一个例外,因为只有几个选项可以使用环境变量覆盖。了解如何覆盖特定的配置选项。
要启用对 registry 配置文件的管理,并使用 ConfigMap 部署更新的配置:
- 部署 registry。
根据需要在本地编辑 registry 配置文件。registry 中部署的初始 YAML 文件如下所示:查看支持的选项。
registry 配置文件
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建一个
ConfigMap,包含此目录中每个文件的内容:oc create configmap registry-config \ --from-file=</path/to/custom/registry/config.yml>/$ oc create configmap registry-config \ --from-file=</path/to/custom/registry/config.yml>/Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将 registry-config ConfigMap 作为卷添加到 registry 的部署配置中,以在 /etc/docker/registry/ 中挂载自定义配置文件:
oc set volume dc/docker-registry --add --type=configmap \ --configmap-name=registry-config -m /etc/docker/registry/$ oc set volume dc/docker-registry --add --type=configmap \ --configmap-name=registry-config -m /etc/docker/registry/Copy to Clipboard Copied! Toggle word wrap Toggle overflow 通过在 registry 的部署配置中添加以下环境变量来更新 registry,以引用上一步中的配置路径:
oc set env dc/docker-registry \ REGISTRY_CONFIGURATION_PATH=/etc/docker/registry/config.yml$ oc set env dc/docker-registry \ REGISTRY_CONFIGURATION_PATH=/etc/docker/registry/config.ymlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
这可以作为迭代过程执行,从而实现所需的配置。例如,在故障排除期间,可临时更新配置以将其置于 debug 模式。
更新现有配置:
此流程将覆盖当前部署的 registry 配置。
- 编辑本地 registry 配置文件 config.yml。
删除 registry-config configmap:
oc delete configmap registry-config
$ oc delete configmap registry-configCopy to Clipboard Copied! Toggle word wrap Toggle overflow 重新创建 configmap 以引用更新的配置文件:
oc create configmap registry-config\ --from-file=</path/to/custom/registry/config.yml>/$ oc create configmap registry-config\ --from-file=</path/to/custom/registry/config.yml>/Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重新部署 registry 以读取更新的配置:
oc rollout latest docker-registry
$ oc rollout latest docker-registryCopy to Clipboard Copied! Toggle word wrap Toggle overflow
在源代码控制存储库中维护配置文件。