[英]How to deploy to ECS when an image is pushed to ECR?
當您使用 ECR 作為源時,ECR 會生成一個名為“imageDetail.json”的工件文件,其格式為 [1]。 但是 ECS 部署階段需要一個名為“imagedefinitions.json”的文件,其格式不同 [2]。
要提供所需的文件,請在源代碼和部署之間添加一個 CodeBuild 步驟,並使用以下構建規范:(基本上轉換文件)
version: 0.2
phases:
install:
runtime-versions:
docker: 18
build:
commands:
- apt-get install jq -y
- ContainerName="todo"
- ImageURI=$(cat imageDetail.json | jq -r '.ImageURI')
- printf '[{"name":"CONTAINER_NAME","imageUri":"IMAGE_URI"}]' > imagedefinitions.json
- sed -i -e "s|CONTAINER_NAME|$ContainerName|g" imagedefinitions.json
- sed -i -e "s|IMAGE_URI|$ImageURI|g" imagedefinitions.json
- cat imagedefinitions.json
artifacts:
files:
- imagedefinitions.json
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.