AWS ECS 작업 정의 워크플로

AWS ECS 작업 정의 워크플로

ECS(EC2)에 배포할 서비스 중 하나를 설정했습니다. Terraform을 통해 서비스 및 작업 정의를 구성한 다음 배포하려면 작업 정의를 다시 정의해야 하는 Github 작업을 사용하고 있습니다.

둘 다 필요한 것 같습니다. 중복 작업 정의를 제거할 수 있도록 하는 올바른 작업 흐름은 무엇입니까?

Github 작업을 통해 이 작업 정의가 배포되면 Terraform이 되돌리려는 이미지가 업데이트된다는 문제도 있습니다.

답변1

이것은 오래된 것이지만 나중에 참조할 수 있습니다.

처음에 서비스를 시작하려면(사전 구성된 클러스터를 생성하는 동안) 첫 번째 항목이 필요합니다.

두 번째 것을 업데이트하는 옵션으로 고려할 수 있습니다.서비스(이미지의 새 버전 배포) GitHub Actions 배포 중 초기 버전 위에 배치합니다(이미지 ID와 기본적으로 작업 정의에서 구성 옵션으로 사용하는 모든 항목을 변경할 수 있음).

Terraform과 관련하여 다음과 같이 사전 구성된 image_id에 대한 변경 사항을 무시하도록 수명 주기 규칙을 추가할 수 있습니다.aws_ecs_service:

  lifecycle {
    ignore_changes = [task_definiton]
  }

있다꽤 오래된 문제작업 정의 변경 사항을 처리하는 방법에 대해서는 terraform-provider-aws 프로젝트에서 확인하세요. 보세요이 댓글사용 사례에 대한 가능한 해결 방법(댓글 작성자의 주제에 대한 블로그 게시물).

아래로 내려가시면 보실 수 있어요또 다른 댓글연결Terraform 코드 예제가 포함된 즉시 사용 가능한 Github Actions 솔루션입니다.

관련 정보