如何在適用於 Amazon Linux 2 的 Amazon EC2 執行個體上使用執行個體角色在 AWS CodeCommit 儲存庫上執行 Git 操作?

2 分的閱讀內容
0

我想在 AWS CodeCommit 儲存庫上執行 Git 操作。我想在適用於 Amazon Linux 2 的 Amazon Elastic Compute Cloud (Amazon EC2) 執行個體上使用執行個體角色。

簡短說明

使用 AWS Command Line Interface (AWS CLI) 憑證助手,在 CodeCommit 儲存庫上使用 EC2 執行個體上的執行個體角色進行 Git 操作。

**注意:**使用憑證助手是 CodeCommit 儲存庫不需要 AWS Identity and Access Management (IAM) 使用者的唯一連線方法。

解決方案

**注意:**如果您在執行 AWS CLI 命令時收到錯誤訊息,請確定您使用的是最新版本的 AWS CLI

1.    為您的 EC2 執行個體建立 IAM 角色,然後將下列 IAM 政策範例附加至該角色。將 arn:aws:codecommit:us-east-1:111111111111:testrepo 以您的 CodeCommit 儲存庫的 ARN 取代。

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "codecommit:GitPull",
        "codecommit:GitPush"
      ],
      "Resource": "arn:aws:codecommit:us-east-1:111111111111:testrepo"
    }
  ]
}

**注意:**步驟 1 的政策允許 IAM 角色在 CodeCommit 儲存庫上執行 Git 提取和推送動作。如需將 IAM 政策用於 CodeCommit 的更多範例,請參閱針對 CodeCommit 使用身分型政策 (IAM 政策)

2.    將您在步驟 1 中建立的 IAM 角色附加至 EC2 執行個體

3.    在您的 EC2 執行個體上安裝 Git。

**注意:**如需詳細資訊,請參閱 Git 網站上的下載

4.    若要在 EC2 執行個體上設定憑證助手,請執行下列命令:

$ git config --global credential.helper '!aws codecommit credential-helper $@'

$ git config --global credential.UseHttpPath true

**注意:**步驟 4 中的命令會指定搭配 AWS 憑證設定檔使用 Git 憑證助手。憑證設定檔可讓 Git 向 AWS 進行驗證,以便與 CodeCommit 儲存庫互動。為了進行驗證,Git 會使用 HTTPS 和 EC2 執行個體角色的加密簽署版本。

5.    若要明確設定您的姓名和電子郵件地址,請執行下列命令:

$ git config --global user.email "testuser@example.com"

$ git config --global user.name "testuser"

**注意:**系統會根據您的使用者名稱和主機名稱自動設定您的姓名和電子郵件地址。

6.    若要將儲存庫複製到 EC2 執行個體,請執行下列命令:

$ git clone https://git-codecommit.us-east-1.amazonaws.com/v1/repos/testrepo

7.    在您的 CodeCommit 儲存庫中建立一個遞交

**注意:**如果您使用的是 Windows,請參閱使用 AWS CLI 憑證助手在 Windows 上設定 HTTPS 連線至 AWS CodeCommit 儲存庫的步驟


相關資訊

使用 AWS CLI 憑證助手在 Linux、macOS 或 Unix 上設定 HTTPS 連線至 AWS CodeCommit 儲存庫的步驟

如何在適用於 Windows 的 Amazon EC2 執行個體上使用執行個體角色在 AWS CodeCommit 儲存庫上執行 Git 操作?

AWS 官方
AWS 官方已更新 1 年前