ACR基于仓库级别的配置,支持镜像版本不可变,开启镜像不可变功能后,除latest版本外,存量和新增的其他镜像版本均不可覆盖,保障您的容器镜像版本一致性。您可以使用该功能,保证相同版本的镜像只可以被成功推送一次,而且可以避免人为误操作引起的镜像版本覆盖问题。
操作步骤
登录容器镜像服务控制台。
在顶部菜单栏,选择所需地域。
在左侧导航栏,选择实例列表。
在实例列表页面单击目标企业版实例。
在企业版实例管理页面左侧导航栏选择 。
在镜像仓库页面,单击目标仓库操作列的管理。
在基本信息页面单击编辑。
在修改基本信息对话框中选中不可变,然后单击确定。
说明去掉选中不可变,可以关闭镜像版本不可变功能。
结果验证
使用
docker push
命令推送一个非latest版本的新镜像至相应的仓库。docker push example-registry-vpc.cn-hangzhou.cr.aliyuncs.com/test/example:v1
再次推送与步骤1相同版本的镜像。
推送过程将被阻断,出现如下镜像版本不可覆盖的提示。
The requested tag already exists and cannot be overwritten.
使用
docker push
命令推送一个latest版本的新镜像至相应的仓库。docker push example-registry-vpc.cn-hangzhou.cr.aliyuncs.com/test/example:latest
再次推送与步骤3相同版本的镜像。
推送成功,推送的镜像覆盖了步骤3的镜像。
关闭镜像版本不可变功能。
推送与步骤1相同版本的镜像。
推送成功,推送镜像覆盖了步骤1的镜像。