

AWS App Runner 는 더 이상 신규 고객에게 공개되지 않습니다. 기존 고객은 정상적으로 서비스를 계속 이용할 수 있습니다. 자세한 내용은 [AWS App Runner 가용성 변경](https://docs.aws.amazon.com/apprunner/latest/dg/apprunner-availability-change.html)을 참조하세요.

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

# App Runner에 새 애플리케이션 버전 배포
<a name="manage-deploy"></a>

에서 [서비스를 생성할](manage-create.md) 때 컨테이너 이미지 또는 소스 리포지토리와 같은 애플리케이션 소스를 AWS App Runner구성합니다. App Runner는 서비스를 실행하기 위해 리소스를 프로비저닝하고 해당 리소스에 애플리케이션을 배포합니다.

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

## 배포 방법
<a name="manage-deploy.methods"></a>

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

**자동 배포**  
서비스에 대한 지속적 통합 및 배포(CI/CD) 동작을 원하는 경우 자동 배포를 사용합니다. App Runner는 이미지 또는 코드 리포지토리의 변경 사항을 모니터링합니다.  
**이미지 리포**지토리 - 이미지 리포지토리에 새 이미지 버전을 푸시하거나 코드 리포지토리에 새 커밋을 푸시할 때마다 App Runner는 추가 작업 없이 서비스에 자동으로 배포합니다.  
**코드 리포**지토리 - [소스 디렉터리](service-source-code.md#service-source-code.source-directory)를 변경하는 새 커밋을 코드 리포지토리에 푸시할 때마다 App Runner는 전체 리포지토리를 배포합니다. *소스 디렉터리의 변경 사항만* 자동 배포를 트리거하므로 소스 디렉터리 위치가 자동 배포 범위에 미치는 영향을 이해하는 것이 중요합니다.  
+ *최상위 디렉터리(리포지토리 루트)* - 서비스를 생성할 때 소스 디렉터리에 대해 설정된 기본값입니다. 소스 디렉터리가이 값으로 설정된 경우 전체 리포지토리가 소스 디렉터리 내에 있음을 의미합니다. 따라서 소스 리포지토리로 푸시하는 *모든 커밋*은이 경우 배포를 트리거합니다.
+ *리포지토리 루트가 아닌 디렉터리 경로(기본값 아님) -* *소스 디렉터리 내에서 푸시된 변경 사항만* 자동 배포를 트리거하므로 소스 디렉터리에 *없는* 리포지토리로 푸시된 변경 사항은 자동 배포를 트리거하지 않습니다. 따라서 수동 배포를 사용하여 소스 디렉터리 외부로 푸시하는 변경 사항을 배포해야 합니다.
App Runner는 Amazon ECR 퍼블릭 이미지 및 서비스가 속한 계정과 다른 AWS 계정에 속하는 Amazon ECR 리포지토리의 이미지에 대한 자동 배포를 지원하지 않습니다.

**수동 배포**  
서비스에 대한 각 배포를 명시적으로 시작하려는 경우 수동 배포를 사용합니다. 서비스에 대해 구성한 리포지토리에 배포하려는 새 버전이 있는 경우 배포를 시작합니다. 자세한 내용은 [수동 배포](#manage-deploy.manual) 단원을 참조하십시오.  
수동 배포를 실행하면 App Runner가 전체 리포지토리에서 소스를 배포합니다.

다음과 같은 방법으로 서비스에 대한 배포 방법을 구성할 수 있습니다.
+ *콘솔* - 생성 중인 새 서비스 또는 기존 서비스의 경우 **소스 및** **배포 구성 페이지의 배포 설정** 섹션에서 **수동** 또는 **자동**을 선택합니다.  
![App Runner 배포 방법 구성](http://docs.aws.amazon.com/ko_kr/apprunner/latest/dg/images/manage-deploy.methods.config.png)
+ *API 또는 AWS CLI* - [CreateService](https://docs.aws.amazon.com/apprunner/latest/api/API_CreateService.html) 또는 [UpdateService](https://docs.aws.amazon.com/apprunner/latest/api/API_UpdateService.html) 작업을 호출할 때 수동 배포 또는 자동 배포를 `True` 위해 [SourceConfiguration](https://docs.aws.amazon.com/apprunner/latest/api/API_SourceConfiguration.html) 파라미터의 `AutoDeploymentsEnabled` 멤버`False`를 로 설정합니다.

**자동 및 수동 배포 비교**  
자동 배포와 수동 배포 모두 동일한 결과를 산출합니다. 두 방법 모두 전체 리포지토리를 배포합니다.  
두 방법의 차이점은 트리거 메커니즘입니다.  
수동 배포는 콘솔의 배포,에 대한 호출 AWS CLI또는 App Runner API에 대한 호출에 의해 트리거됩니다. 다음 [수동 배포](#manage-deploy.manual) 섹션에서는 이에 대한 절차를 제공합니다.
자동 배포는 [소스 디렉터리](service-source-code.md#service-source-code.source-directory)의 내용 내에서 변경하여 트리거됩니다.

## 수동 배포
<a name="manage-deploy.manual"></a>

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

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

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

------
#### [ App Runner console ]

**App Runner 콘솔을 사용하여 배포하려면**

1. [App Runner 콘솔](https://console.aws.amazon.com/apprunner)을 열고 **리전** 목록에서를 선택합니다 AWS 리전.

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

   콘솔에 서비스 **개요**와 함께 서비스 대시보드가 표시됩니다.  
![활동 목록을 보여주는 App Runner 서비스 대시보드 페이지](http://docs.aws.amazon.com/ko_kr/apprunner/latest/dg/images/console-dashboard.png)

1. **배포(Deploy)**를 선택합니다.

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

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

1. 배포가 성공했는지 확인하려면 서비스 대시보드 페이지에서 **기본 도메인** 값인 서비스 웹 사이트의 URL을 선택합니다. 웹 애플리케이션을 검사하거나 상호 작용하고 버전 변경을 확인합니다.
**참고**  
App Runner 애플리케이션의 보안을 강화하기 위해 *\*.awsapprunner.com* 도메인은 [퍼블릭 접미사 목록(PSL)](https://publicsuffix.org/)에 등록됩니다. 보안을 강화하려면 App Runner 애플리케이션의 기본 도메인 이름에 민감한 쿠키를 설정해야 하는 경우 `__Host-` 접두사가 있는 쿠키를 사용하는 것이 좋습니다. 이렇게 쿠키를 설정하면 교차 사이트 요청 위조 시도(CSRF)로부터 도메인을 보호하는 데 도움이 됩니다. 자세한 내용은 Mozilla 개발자 네트워크의 [Set-Cookie](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie#cookie_prefixes) 페이지를 참조하세요.

------
#### [ App Runner API or AWS CLI ]

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

------