12.2. 管理容器名称模式
当您使用 Satellite 创建和管理容器时,容器通过 Satellite 生命周期环境的 Content View version 和不同阶段移动时,容器名称在每个阶段更改。例如,如果您将容器镜像与上游存储库的名称 ssh
同步,则当将其添加到 Satellite 产品和机构时,作为内容视图的一部分发布,容器镜像可以具有以下名称: my_organization_production-custom_spin-my_product-custom_ssh
。这在要拉取容器镜像时可能会造成问题,因为容器 registry 只能包含一个容器名称的实例。为了避免 Satellite 命名约定出现问题,您可以设置注册表名称模式来覆盖默认名称,以确保以后使用容器名称是明确的。
限制
如果使用 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。