13.2. 管理容器名称模式
当您使用 Satellite 创建和管理容器时,容器会经历 Satellite 生命周期环境的 Content View 版本和不同阶段,容器名称会在每个阶段发生变化。例如,如果您将容器镜像与来自上游存储库的名称 ssh
同步,当将其添加到 Satellite 产品和机构中,然后作为内容视图的一部分发布,容器镜像可以具有以下名称: my_organization_production-custom_spin-my_product-custom_ssh
。当您想拉取容器镜像时,这可能会造成问题,因为容器 registry 只能包含容器名称的一个实例。为了避免 Satellite 命名约定出现问题,您可以设置 registry 名称模式来覆盖默认名称,以确保容器名称明确供以后使用。
限制
如果使用 registry 名称模式来管理容器命名约定,因为 registry 命名模式必须生成全局唯一的名称,您可能会遇到命名冲突问题。例如:
-
如果设置了
repository.docker_upstream_name
registry 名称模式,则无法发布或提升具有相同存储库名称的容器内容的内容视图到Production
生命周期。 -
如果设置了
lifecycle_environment.name
registry 名称模式,这可以防止创建具有相同名称的第二个容器存储库。
为容器定义 registry 命名模式时,您必须小心。
流程
要使用 registry 名称模式管理容器命名,请完成以下步骤:
- 在 Satellite Web UI 中,导航到 Content > Lifecycle Environments,创建生命周期环境或选择要编辑的生命周期环境。
- 在 Container Image Registry 区域中,单击 Registry Name Pattern 区域右侧的编辑图标。
- 使用变量列表和示例来确定您需要的 registry 名称模式。
在 Registry Name Pattern 字段中,输入您要使用的 registry 名称模式。例如,要使用
repository.docker_upstream_name
:<%= repository.docker_upstream_name %>
- 点击 Save。