本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
防止在 Amazon ECR 中覆寫映像標籤
您可以在儲存庫中開啟標籤不可變性,以防止映像標籤遭到覆寫。開啟標籤不可變性後,如果您推送的映像具有已在儲存庫中的標籤,則會傳回ImageTagAlreadyExistsException
錯誤。標籤不可變性會影響所有標籤。您無法讓某些標籤不可變,而其他標籤則不可變。
您可以使用 AWS Management Console 和 AWS CLI 工具來設定新儲存庫或現有儲存庫的影像標籤可變性。若要使用主控台步驟建立儲存庫,請參閱 建立 Amazon ECR 私有儲存庫以存放映像。
設定影像標籤可變性 (AWS Management Console)
設定影像標籤可變性
在 https://console.aws.amazon.com/ecr/repositories
開啟 Amazon ECR 主控台。 -
從導覽列上,選擇包含要編輯之儲存庫的區域。
-
在導覽窗格中,選擇私有登錄檔下的儲存庫。
如果您沒有看到儲存庫,請選擇私有登錄檔以展開選單,然後選擇儲存庫。
-
在私有儲存庫頁面上,選擇您要設定影像標籤可變性設定的儲存庫名稱前面的選項按鈕。
-
選擇動作,然後在編輯下選擇儲存庫。
-
針對影像標籤不可變性,選擇下列其中一個儲存庫的標籤可變性設定。
-
可互斥 – 如果您想要覆寫影像標籤,請選擇此選項。建議用於使用提取快取動作的儲存庫,以確保 Amazon ECR 可以更新快取映像。此外,若要停用幾個可變標籤的標籤更新,請輸入標籤名稱或使用萬用字元 (*) 來比對 Mutable 標籤排除文字方塊中的多個類似標籤。
-
不可變:如果您想要防止映像標籤遭到覆寫,而且在推送具有現有標籤的映像時,它適用於儲存庫中的所有標籤和排除項目,請選擇此選項。
ImageTagAlreadyExistsException
如果您嘗試推送具有現有標籤的映像,Amazon ECR 會傳回 。此外,若要啟用幾個不可變標籤的標籤更新,請輸入標籤名稱或使用萬用字元 (*) 在不可分割標籤排除文字方塊中比對多個類似的標籤。
-
-
對於 Image scan settings (映像掃描設定),雖然您可以在儲存庫層級指定基本掃描的掃描設定,但最佳實務是在私有登錄檔層級指定掃描組態。在私有登錄檔層級指定掃描設定讓您能啟用增強型掃描或基本掃描,還能定義篩選條件來指定要掃描哪些儲存庫。如需詳細資訊,請參閱掃描映像是否有 Amazon ECR 中的軟體漏洞。
-
對於 Encryption settings (加密設定),這是一個僅能檢視的欄位,因為儲存庫建立後,就無法變更儲存庫的加密設定。
-
選擇 Save (儲存) 更新儲存庫設定。
設定影像標籤可變性 (AWS CLI)
建立儲存庫並設定不可變標籤
使用以下其中一個命令來建立新的映像儲存庫,並設定不可變標籤。
-
create-repository (AWS CLI) 具有影像標籤可變性
aws ecr create-repository --repository-name
name
--image-tag-mutabilityIMMUTABLE
--regionus-east-2
-
create-repository (AWS CLI) 搭配影像標籤可變性排除篩選條件
aws ecr create-repository --repository-name
name
--image-tag-mutabilityIMMUTABLE_WITH_EXCLUSION
--image-tag-mutability-exclusion-filters filterType=WILDCARD
,filter=filter-text
--region
us-east-2
-
具有映像標籤可變性的 New-ECRRepository (AWS Tools for Windows PowerShell)
New-ECRRepository -RepositoryName
name
-ImageTagMutabilityIMMUTABLE
-Regionus-east-2
-Force
-
具有影像標籤可變性排除篩選條件的 New-ECRRepository (AWS Tools for Windows PowerShell)
New-ECRRepository -RepositoryName
name
-ImageTagMutabilityIMMUTABLE_WITH_EXCLUSION
-ImageTagMutabilityExclusionFilter @{FilterType=WILDCARD
Filter=filter-text
}-Region
us-east-2
-Force
更新儲存庫的映像標籤可變性設定
使用以下其中一個命令來更新現有儲存庫的映像標籤可變性設定。
-
put-image-tag-mutability (AWS CLI) 具有影像標籤可變性
aws ecr put-image-tag-mutability --repository-name
name
--image-tag-mutabilityIMMUTABLE
--regionus-east-2
-
put-image-tag-mutability (AWS CLI) 搭配影像標籤可變性排除篩選條件
aws ecr put-image-tag-mutability --repository-name
name
--image-tag-mutabilityIMMUTABLE_WITH_EXCLUSION
--image-tag-mutability-exclusion-filters filterType=WILDCARD
,filter=latest
--region
us-east-2
-
Write-ECRImageTagMutability (AWS Tools for Windows PowerShell) 具有影像標籤可變性
Write-ECRImageTagMutability -RepositoryName
name
-ImageTagMutabilityIMMUTABLE
-Regionus-east-2
-Force -
Write-ECRImageTagMutability (AWS Tools for Windows PowerShell) 搭配影像標籤可變性排除篩選條件
Write-ECRImageTagMutability -RepositoryName
name
-ImageTagMutabilityIMMUTABLE_WITH_EXCLUSION
-ImageTagMutabilityExclusionFilter @{FilterType=WILDCARD
Filter=latest
}