本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 AWS CodeBuild 代理程式在本機執行建置
您可以使用 AWS CodeBuild 代理程式在本機機器上執行 CodeBuild 組建。有適用於 x86_64 和 ARM 平台的代理程式。
您也可以訂閱,以在發佈新版本的代理程式時接收通知。
先決條件
開始之前,您需要執行下列動作:
-
在您的本機電腦上安裝 Git。
-
在本機電腦上安裝和設定 Docker
。
設定建置映像
您只需要在第一次執行代理程式或映像變更時設定建置映像。
設定建置映像
-
如果您想要使用精選的 Amazon Linux 2 映像,您可以使用下列命令從 CodeBuild Amazon ECR 儲存庫中提取:https://gallery.ecr.aws/codebuild/amazonlinux-x86_64-standard
: $
docker pull public.ecr.aws/codebuild/amazonlinux-x86_64-standard:4.0或者,如果您想要使用另一個 Linux 映像,請執行下列步驟:
-
複製 CodeBuild 映像儲存庫:
$
git clone https://github.com/aws/aws-codebuild-docker-images.git -
變更為映像目錄。在此範例中,請使用
aws/codebuild/standard:5.0
映像:$
cd aws-codebuild-docker-images/ubuntu/standard/5.0 -
建置映像。這將需要數分鐘的時間。
$
docker build -t aws/codebuild/standard:5.0 .
-
-
下載 CodeBuild 代理程式。
若要下載 x86_64 版本的代理程式,請執行下列命令:
$
docker pull public.ecr.aws/codebuild/local-builds:latest若要下載代理程式的 ARM 版本,請執行下列命令:
$
docker pull public.ecr.aws/codebuild/local-builds:aarch64 -
CodeBuild 代理程式可從 https://https://gallery.ecr.aws/codebuild/local-builds
取得。 x86_64 版代理程式的安全雜湊演算法 (SHA) 簽章為:
sha256:ccb19bdd7af94e4dc761e4c58c267e9455c28ec68d938086b4dc1cf8fe6b0940
代理程式 ARM 版本的 SHA 簽章為:
sha256:7d7b5d35d2ac4e062ae7ba8c662ffed15229a52d09bd0d664a7816c439679192
您可以使用 SHA 來識別代理程式的版本。若要查看代理程式的 SHA 簽章,請執行下列命令,並在 下尋找 SHA
RepoDigests
:$
docker inspect public.ecr.aws/codebuild/local-builds:latest
執行 CodeBuild 代理程式
執行 CodeBuild 代理程式
-
變更至包含您建置專案來源的目錄。
-
下載 codebuild_build.sh
指令碼: $
curl -O https://raw.githubusercontent.com/aws/aws-codebuild-docker-images/master/local_builds/codebuild_build.sh$
chmod +x codebuild_build.sh -
執行
codebuild_build.sh
指令碼並指定您的容器映像和輸出目錄。若要執行 x86_64 建置,請執行下列命令:
$
./codebuild_build.sh -i<container-image>
-a<output directory>
若要執行 ARM 組建,請執行下列命令:
$
./codebuild_build.sh -i<container-image>
-a<output directory>
-l public.ecr.aws/codebuild/local-builds:aarch64將
<container-image>
取代為容器映像的名稱,例如aws/codebuild/standard:5.0
或public.ecr.aws/codebuild/amazonlinux-x86_64-standard:4.0
。指令碼會啟動建置映像,並在目前目錄中的專案上執行建置。若要指定建置專案的位置,請將
-s
選項新增至指令碼命令。<build project directory>
接收新 CodeBuild 代理程式版本的通知
您可以訂閱 Amazon SNS 通知,以便在發行新版本的 AWS CodeBuild 代理程式時收到通知。
訂閱 CodeBuild 代理程式通知
-
在 https://console.aws.amazon.com/sns/v3/home
開啟 Amazon SNS 主控台。 -
在導覽列中,如果尚未選取,請將 AWS 區域變更為美國東部 (維吉尼亞北部)。您必須選取此 AWS 區域,因為您訂閱的 Amazon SNS 通知是在此區域中建立的。
-
在導覽窗格中,選擇訂閱。
-
選擇 Create subscription (建立訂閱)。
-
在建立訂閱中,執行下列動作:
-
對於 Topic ARN (主題 ARN),請使用下列 Amazon Resource Name (ARN):
arn:aws:sns:us-east-1:850632864840:AWS-CodeBuild-Local-Agent-Updates
-
針對通訊協定,選擇電子郵件 或簡訊。
-
針對 Endpoint (端點),選擇要接收通知的位置 (電子郵件或簡訊)。輸入電子郵件或地址或電話號碼,包括區碼。
-
選擇 Create subscription (建立訂閱)。
-
選擇電子郵件以接收要求您確認訂閱的電子郵件。遵循電子郵件中的指示來完成訂閱。
如果您不想再接收這些通知,請使用下列程序來取消訂閱。
-
取消訂閱 CodeBuild 代理程式通知
-
在 https://console.aws.amazon.com/sns/v3/home
開啟 Amazon SNS 主控台。 -
在導覽窗格中,選擇訂閱。
-
選取訂閱,然後從 Actions (動作),選擇 Delete subscriptions (刪除訂閱)。出現確認提示時,選擇 Delete (刪除)。