[英]Overwrite docker image with latest tag in artifactory
我目前正在將同一圖像兩次推送到 artifactory,一個帶有標簽號,另一個帶有最新標簽。
對於下一個版本,我想用包含最新標簽的新圖像覆蓋帶有最新標簽的圖像。 以下是我從 Azure devops build 嘗試的方式
Docker Build Command:
$(docker_registry)/$(Build.Repository.Name):$(BuildNbr)
Docker Push Command
$(docker_registry)/$(Build.Repository.Name):$(BuildNbr)
與上面的最新標簽相同,然后
docker pull $(docker_registry)/imageName:latest
docker rmi --force $(docker_registry)/imageName:latest //removing latest image from artifactory NOT WORKING
docker pull $(docker_registry)/imageName:$(BuildNbr)
docker tag $(docker_registry)/imageName:$(BuildNbr) $(docker_registry)/imageName:latest
docker push $(docker_registry)/imageName:latest
不知何故,上面的流程不起作用,最新的圖像沒有被覆蓋。
我做錯了嗎? 我相信 rmi 命令不會從 artifactory 中刪除圖像。
您可以通過權限的包含/排除模式來實現它。 您可以創建一個新的權限目標,為其中包含“最新”的標簽提供覆蓋/刪除權限:
**
**/latest/*
然后,對於定義其余標記(1.1、1.2 等)的所有其他權限目標,不提供覆蓋/刪除權限。 有了這個,您將能夠覆蓋最新的而不是其他標簽。
您可以在此處閱讀與權限目標相關的包含/排除模式。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.