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的鏡像。