开启镜像版本不可变

ACR基于仓库级别的配置,支持镜像版本不可变,开启镜像不可变功能后,除latest版本外,存量和新增的其他镜像版本均不可覆盖,保障您的容器镜像版本一致性。您可以使用该功能,保证相同版本的镜像只可以被成功推送一次,而且可以避免人为误操作引起的镜像版本覆盖问题。

操作步骤

  1. 登录容器镜像服务控制台

  2. 在顶部菜单栏,选择所需地域。

  3. 在左侧导航栏,选择实例列表

  4. 实例列表页面单击目标企业版实例。

  5. 在企业版实例管理页面左侧导航栏选择仓库管理 > 镜像仓库

  6. 在镜像仓库页面,单击目标仓库操作列的管理

  7. 在基本信息页面单击编辑

  8. 修改基本信息对话框中选中不可变,然后单击确定

    说明

    去掉选中不可变,可以关闭镜像版本不可变功能。

结果验证

  1. 使用docker push命令推送一个非latest版本的新镜像至相应的仓库。

    docker push example-registry-vpc.cn-hangzhou.cr.aliyuncs.com/test/example:v1
  2. 再次推送与步骤1相同版本的镜像。

    推送过程将被阻断,出现如下镜像版本不可覆盖的提示。

    The requested tag already exists and cannot be overwritten.
  3. 使用docker push命令推送一个latest版本的新镜像至相应的仓库。

    docker push example-registry-vpc.cn-hangzhou.cr.aliyuncs.com/test/example:latest
  4. 再次推送与步骤3相同版本的镜像。

    推送成功,推送的镜像覆盖了步骤3的镜像。

  5. 关闭镜像版本不可变功能。

  6. 推送与步骤1相同版本的镜像。

    推送成功,推送镜像覆盖了步骤1的镜像。