

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 從 Amazon ECR 私有儲存庫刪除簽章和其他成品
<a name="image-artifact-delete"></a>

您可以使用 ORAS 用戶端，從 Amazon ECR 私有儲存庫列出和刪除簽章和其他參考類型成品。刪除簽章和其他參考成品類似於刪除映像的方式 （請參閱 [在 Amazon ECR 中刪除映像](delete_image.md))。以下是如何列出成品和刪除簽章的方法：

**使用 ORAS CLI 管理影像成品**

1. 安裝和設定 ORAS 用戶端。

   如需有關安裝和設定 ORAS 用戶端的資訊，請參閱 ORAS 文件中的[安裝](https://oras.land/docs/installation)。

1. 若要列出 Amazon ECR 映像的可用成品，請使用 `oras discover`，後面接著映像名稱：

   ```
   oras discover 111222333444.dkr.ecr.us-east-1.amazonaws.com/oci:helloworld
   ```

   輸出看起來會與此類似：

   ```
   111222333444.dkr.ecr.us-east-1.amazonaws.com/oci@sha256:88c0c54329bfdc1d94d6f58cd3fcb1226d46f58670f44a8c689cb3c9b37b6925
   └── application/vnd.cncf.notary.signature
       ├── sha256:387c10c1598ee18aae81dcfc86d0d06d116e46461d1c3cda8927e69c48108c42
       └── sha256:6527bcec87adf1d55460666183b9d0968b3cd4e4bc34602d485206a219851171
   ```

1. 若要使用 ORAS CLI 刪除簽章，根據先前的範例，請執行下列命令：

   ```
   oras manifest delete 111222333444.dkr.ecr.us-east-1.amazonaws.com/oci@sha256:387c10c1598ee18aae81dcfc86d0d06d116e46461d1c3cda8927e69c48108c42
   ```

   輸出看起來會與此類似：

   ```
   Are you sure you want to delete the manifest "111222333444.dkr.ecr.us-east-1.amazonaws.com/oci@sha256:387c10c1598ee18aae81dcfc86d0d06d116e46461d1c3cda8927e69c48108c42" and all tags associated with it? [y/N] y
   ```

1. 按 `y` 鍵。應刪除成品。

**對成品刪除進行疑難排解**

如果簽章刪除，例如剛才顯示的簽章刪除應該失敗，則會顯示類似以下的輸出。

```
Error response from registry: failed to delete 111222333444.dkr.ecr.us-east-1.amazonaws.com/oci@sha256:387c10c1598ee18aae81dcfc86d0d06d116e46461d1c3cda8927e69c48108c42:
unsupported: Requested image referenced by manifest list: [sha256:005e2c97a6373e483799fa4ff29ac64a42dd10f08efcc166d6775f9b74943b5b]
```

刪除在 OCI 1.1 啟動之前推送的映像時，可能會發生此失敗。如錯誤中所述，您必須先刪除參考映像的資訊清單，才能刪除映像，如下所示：

1. 若要刪除與要刪除的簽章相關聯的資訊清單，請輸入：

   ```
    oras manifest delete 111222333444.dkr.ecr.us-east-1.amazonaws.com/oci@sha256:005e2c97a6373e483799fa4ff29ac64a42dd10f08efcc166d6775f9b74943b5b
   ```

   輸出看起來會與此類似：

   ```
   Are you sure you want to delete the manifest "sha256:005e2c97a6373e483799fa4ff29ac64a42dd10f08efcc166d6775f9b74943b5b" and all tags associated with it? [y/N] y
   ```

1. 按 `y` 鍵。應刪除資訊清單。

1. 當資訊清單消失時，您可以刪除簽章：

   ```
    oras manifest delete 111222333444.dkr.ecr.us-east-1.amazonaws.com/oci@sha256:387c10c1598ee18aae81dcfc86d0d06d116e46461d1c3cda8927e69c48108c42
   ```

   輸出看起來應該像這樣。按 `y` 鍵。

   ```
   Are you sure you want to delete the manifest "sha256:387c10c1598ee18aae81dcfc86d0d06d116e46461d1c3cda8927e69c48108c42" and all tags associated with it? [y/N] y
   Deleted [registry] 111222333444.dkr.ecr.us-east-1.amazonaws.com/oci@sha256:387c10c1598ee18aae81dcfc86d0d06d116e46461d1c3cda8927e69c48108c42
   ```

1. 若要查看簽章已刪除，請輸入：

   ```
   oras discover 111222333444.dkr.ecr.us-east-1.amazonaws.com/oci:helloworld
   ```

   輸出看起來會與此類似：

   ```
   111222333444.dkr.ecr.us-east-1.amazonaws.com/oci@sha256:88c0c54329bfdc1d94d6f58cd3fcb1226d46f58670f44a8c689cb3c9b37b6925
   └── application/vnd.cncf.notary.signature
       └── sha256:6527bcec87adf1d55460666183b9d0968b3cd4e4bc34602d485206a219851171
   ```