App Runner에 새 애플리케이션 버전 배포 - AWS App Runner

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

App Runner에 새 애플리케이션 버전 배포

에서 서비스를 생성할 때 컨테이너 이미지 또는 소스 리포지토리와 같은 애플리케이션 소스를 AWS App Runner구성합니다. App Runner는 리소스를 프로비저닝하여 서비스를 실행하고 애플리케이션을 배포합니다.

이 주제에서는 새 버전을 사용할 수 있게 되면 애플리케이션 소스를 App Runner 서비스에 재배포하는 방법을 설명합니다. 이는 이미지 리포지토리의 새 이미지 버전이거나 코드 리포지토리의 새 커밋일 수 있습니다. App Runner는 서비스에 배포하는 두 가지 방법인 자동수동 를 제공합니다.

배포 방법

App Runner는 애플리케이션 배포가 시작되는 방식을 제어할 수 있는 다음 방법을 제공합니다.

자동 배포

서비스에 대한 지속적 통합 및 배포(CI/CD) 동작을 원하는 경우 자동 배포를 사용합니다. App Runner는 이미지 또는 코드 리포지토리의 변경 사항을 모니터링합니다.

이미지 리포지토리 - 이미지 리포지토리에 새 이미지 버전을 푸시하거나 코드 리포지토리에 새 커밋을 푸시할 때마다 App Runner는 추가 작업 없이 서비스에 자동으로 배포합니다.

코드 리포지토리 - 소스 디렉터리 를 변경하는 코드 리포지토리에 새 커밋을 푸시할 때마다 App Runner는 전체 리포지토리를 배포합니다. 소스 디렉터리의 변경 사항만 자동 배포를 트리거하므로 소스 디렉터리 위치가 자동 배포 범위에 어떤 영향을 미치는지 이해하는 것이 중요합니다.

  • 최상위 디렉터리(리포지토리 루트) - 서비스를 생성할 때 소스 디렉터리에 대해 설정된 기본값입니다. 소스 디렉터리가 이 값으로 설정된 경우 전체 리포지토리가 소스 디렉터리 내에 있음을 의미합니다. 따라서 소스 리포지토리로 푸시하는 모든 커밋은 이 경우 배포를 트리거합니다.

  • 리포지토리 루트가 아닌 모든 디렉터리 경로(기본값 아님) - 소스 디렉터리 내에서 푸시된 변경 사항만 자동 배포를 트리거하므로 소스 디렉터리에 없는 리포지토리로 푸시된 모든 변경 사항은 자동 배포를 트리거하지 않습니다. 따라서 수동 배포를 사용하여 소스 디렉터리 외부로 푸시하는 변경 사항을 배포해야 합니다.

참고

App Runner는 Amazon ECR Public 이미지에 대한 자동 배포와 서비스가 속한 계정과 다른 AWS 계정에 속하는 Amazon ECR리포지토리의 이미지에 대한 자동 배포를 지원하지 않습니다.

수동 배포

서비스에 대한 각 배포를 명시적으로 시작하려면 수동 배포를 사용합니다. 서비스에 대해 구성한 리포지토리에 배포하려는 새 버전이 있는 경우 배포를 시작합니다. 자세한 내용은 수동 배포 단원을 참조하십시오.

참고

수동 배포를 실행하면 App Runner는 전체 리포지토리에서 소스를 배포합니다.

다음과 같은 방법으로 서비스에 대한 배포 방법을 구성할 수 있습니다.

  • 콘솔 - 생성 중인 새 서비스 또는 기존 서비스의 경우 소스 및 배포 구성 페이지의 배포 설정 섹션에서 수동 또는 자동 을 선택합니다.

    App Runner 배포 방법 구성
  • API 또는 AWS CLI - CreateService 또는 UpdateService 작업을 호출할 때 수동 배포 또는 자동 배포를 False 위해 SourceConfiguration 파라미터의 AutoDeploymentsEnabled 멤버True를 로 설정합니다.

자동 및 수동 배포 비교

자동 배포와 수동 배포 모두 동일한 결과를 얻습니다. 두 방법 모두 전체 리포지토리를 배포합니다.

두 방법의 차이점은 트리거 메커니즘입니다.

  • 수동 배포는 콘솔의 배포, 에 대한 호출 AWS CLI또는 App Runner 에 대한 호출에 의해 트리거됩니다API. 다음 수동 배포 섹션에서는 이에 대한 절차를 제공합니다.

  • 자동 배포는 소스 디렉터리 의 내용 내에서 변경되어 트리거됩니다.

수동 배포

수동 배포를 사용하면 서비스에 대한 각 배포를 명시적으로 시작해야 합니다. 새 버전의 애플리케이션 이미지 또는 코드를 배포할 준비가 되면 다음 섹션을 참조하여 콘솔 및 를 사용하여 배포를 수행하는 방법을 알아볼 수 있습니다API.

참고

수동 배포를 실행하면 App Runner는 전체 리포지토리에서 소스를 배포합니다.

다음 방법 중 하나를 사용하여 애플리케이션 버전을 배포합니다.

App Runner console
App Runner 콘솔을 사용하여 배포하려면
  1. App Runner 콘솔 을 열고 리전 목록에서 를 선택합니다 AWS 리전.

  2. 탐색 창에서 서비스 를 선택한 다음 App Runner 서비스를 선택합니다.

    콘솔에는 서비스 개요 와 함께 서비스 대시보드가 표시됩니다.

    활동 목록을 보여주는 App Runner 서비스 대시보드 페이지
  3. 배포(Deploy)를 선택합니다.

    결과: 새 버전의 배포가 시작됩니다. 서비스 대시보드 페이지에서 서비스 상태가 진행 중인 작업 으로 변경됩니다.

  4. 배포가 종료될 때까지 기다립니다. 서비스 대시보드 페이지에서 서비스 상태가 실행 중으로 다시 변경되어야 합니다.

  5. 배포가 성공했는지 확인하려면 서비스 대시보드 페이지에서 기본 도메인 값을 선택합니다. 기본 도메인 값은 URL 서비스 웹 사이트의 입니다. 웹 애플리케이션을 검사하거나 상호 작용하고 버전 변경을 확인합니다.

    참고

    App Runner 애플리케이션의 보안을 강화하기 위해 *.awsapprunner.com 도메인은 퍼블릭 접미사 목록(PSL)에 등록됩니다. 보안을 강화하려면 App Runner 애플리케이션의 기본 도메인 이름에 민감한 쿠키를 설정해야 하는 경우 __Host- 접두사가 있는 쿠키를 사용하는 것이 좋습니다. 이 방법은 교차 사이트 요청 위조 시도()로부터 도메인을 보호하는 데 도움이 됩니다CSRF. 자세한 내용은 Mozilla 개발자 네트워크의 Set-Cookie 페이지를 참조하십시오.

App Runner API or AWS CLI

App Runner API 또는 를 사용하여 를 배포하려면 StartDeployment API 작업을 AWS CLI호출합니다. 전달할 유일한 파라미터는 서비스 입니다ARN. 서비스를 생성할 때 애플리케이션 소스 위치를 이미 구성했으며 App Runner에서 새 버전을 찾을 수 있습니다. 호출이 성공적인 응답을 반환하면 배포가 시작됩니다.