View a markdown version of this page

建立儲存庫 - CodeArtifact

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

建立儲存庫

由於 CodeArtifact 中的所有套件都存放在儲存庫中,若要使用 CodeArtifact,您必須建立一個。您可以使用 CodeArtifact 主控台、 AWS Command Line Interface(AWS CLI) 或 來建立儲存庫CloudFormation。每個儲存庫都會與您建立儲存庫時使用AWS的帳戶相關聯。您可以有多個儲存庫,它們會在網域中建立和分組。當您建立儲存庫時,它不包含任何套件。儲存庫是多邊形,這表示單一儲存庫可以包含任何支援類型的套件。

如需 CodeArtifact 服務限制的相關資訊,例如單一網域中允許的儲存庫數量上限,請參閱 配額 inAWSCodeArtifact。如果您達到允許的儲存庫數量上限,您可以刪除儲存庫以騰出更多空間。

儲存庫可以有一或多個與其相關聯的 CodeArtifact 儲存庫做為上游儲存庫。這可讓套件管理員用戶端使用單一 URL 端點存取多個儲存庫中包含的套件。如需詳細資訊,請參閱在 CodeArtifact 中使用上游儲存庫

如需使用 CloudFormation 管理 CodeArtifact 儲存庫的詳細資訊,請參閱 使用 建立 CodeArtifact 資源 AWS CloudFormation

注意

建立儲存庫之後,您無法變更其名稱、相關聯的AWS帳戶或網域。

建立儲存庫 (主控台)

  1. 開啟位於 https://https://console.aws.amazon.com/codesuite/codeartifact/home 的AWSCodeArtifact 主控台。

  2. 在導覽窗格中,選擇儲存庫,然後選擇建立儲存庫

  3. 針對儲存庫名稱,輸入儲存庫的名稱。

  4. (選用) 在儲存庫描述中,輸入儲存庫的選用描述。

  5. (選用) 在發佈上游儲存庫中,新增中繼儲存庫,將儲存庫連線至套件授權單位,例如 Maven Central 或 npmjs.com。

  6. 選擇下一步

  7. AWS 帳戶中,如果您已登入擁有網域的帳戶,請選擇此 AWS 帳戶。如果另一個 AWS 帳戶擁有網域,請選擇不同的 AWS 帳戶。

  8. 網域中,選擇將在其中建立儲存庫的網域。

    如果帳戶中沒有網域,您必須建立一個網域。在網域名稱中輸入新網域的名稱

    展開 Additional configuration (其他組態)

    您必須使用 AWS KMS key(KMS 金鑰) 來加密網域中的所有資產。您可以使用您管理的 AWS 受管金鑰或 KMS 金鑰:

    重要

    CodeArtifact 僅支援對稱 KMS 金鑰。您無法使用非對稱 KMS 金鑰來加密 CodeArtifact 網域。如需判斷 KMS 金鑰為對稱或非對稱的說明,請參閱識別對稱和非對稱 KMS 金鑰

    • 如果您想要使用預設 ,請選擇 AWS 受管金鑰AWS 受管金鑰。

    • 如果您想要使用您管理的 KMS 金鑰,請選擇客戶受管金鑰。若要使用您管理的 KMS 金鑰,請在客戶受管金鑰 ARN 中搜尋並選擇 KMS 金鑰。

    如需詳細資訊,請參閱《 AWS Key Management Service開發人員指南》中的 AWS 受管金鑰客戶受管金鑰

  9. 選擇下一步

  10. 檢閱和建立中,檢閱正在為您建立的 CodeArtifact。

    • 套件流程顯示網域和儲存庫的連線方式。

    • 步驟 1:建立儲存庫會顯示將建立之儲存庫和選用上游儲存庫的詳細資訊。

    • 步驟 2:選取網域會顯示有關 的詳細資訊my_domain

    當您準備好時,請選擇建立儲存庫

建立儲存庫 (AWS CLI)

使用 create-repository命令在您的網域中建立儲存庫。

aws codeartifact create-repository --domain my_domain --domain-owner 111122223333 --repository my_repo --description "My new repository"

輸出範例:

{ "repository": { "name": "my_repo", "administratorAccount": "123456789012", "domainName": "my_domain", "domainOwner": "111122223333", "arn": "arn:aws:codeartifact:region-id:111122223333:repository/my_domain/my_repo", "description": "My new repository", "upstreams": "[]", "externalConnections"" "[]" } }

新的儲存庫不包含任何套件。每個儲存庫都會與您建立儲存庫時所驗證AWS的帳戶相關聯。

建立具有標籤的儲存庫

若要建立具有標籤的儲存庫,請將 --tags 參數新增至您的create-domain命令。

aws codeartifact create-repository --domain my_domain --domain-owner 111122223333 --repository my_repo --tags key=k1,value=v1 key=k2,value=v2

使用上游儲存庫建立儲存庫

您可以在建立儲存庫時指定一或多個上游儲存庫。

aws codeartifact create-repository --domain my_domain --domain-owner 111122223333 --repository my_repo \ --upstreams repositoryName=my-upstream-repo --repository-description "My new repository"

輸出範例:

{ "repository": { "name": "my_repo", "administratorAccount": "123456789012", "domainName": "my_domain", "domainOwner": "111122223333", "arn": "arn:aws:codeartifact:region-id:111122223333:repository/my_domain/my_repo", "description": "My new repository", "upstreams": [ { "repositoryName": "my-upstream-repo" } ], "externalConnections"" "[]" } }
注意

若要使用上游建立儲存庫,您必須具有上游儲存庫上 AssociateWithDownstreamRepository動作的許可。

若要在建立儲存庫之後將上游 新增至儲存庫,請參閱 新增或移除上游儲存庫 (主控台)新增或移除上游儲存庫 (AWS CLI)