

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

# 애플리케이션을 배포하는 방법
<a name="serverlessrepo-how-to-consume"></a>

이 섹션에서는 AWS Management Console 또는를 AWS Serverless Application Repository 사용하여에서 서버리스 애플리케이션을 배포하는 절차를 제공합니다 AWS CLI.

## 새 애플리케이션 배포(콘솔)
<a name="consuming-applications-console"></a>

이 섹션에서는를 AWS Serverless Application Repository 사용하여에서 새 애플리케이션을 배포하는 방법을 보여줍니다 AWS Management Console. 기존 애플리케이션의 새 버전을 배포하는 지침은 [애플리케이션 업데이트](serverlessrepo-how-to-consume-new-version.md) 단원을 참조하십시오.

### 애플리케이션 찾기, 검색 및 배포
<a name="browse-and-search-applications"></a>

다음 절차에 AWS Serverless Application Repository 따라에서 애플리케이션을 찾아 구성하고 배포합니다.

**에서 애플리케이션을 찾고 구성하려면 AWS Serverless Application Repository**

1. [AWS Serverless Application Repository 공개 홈 페이지](https://aws.amazon.com/serverless/serverlessrepo)를 열거나 [AWS Lambda 콘솔](https://console.aws.amazon.com/lambda/)을 엽니다. **함수 생성**을 선택한 다음 **Browse serverless app repository(서버리스 앱 리포지토리 찾아보기)**를 선택합니다.

1. 애플리케이션을 찾거나 검색합니다.
**참고**  
사용자 지정 IAM 역할이나 리소스 정책을 포함하는 애플리케이션을 표시하려면 **Show apps that create custom IAM roles or resource policies(사용자 지정 IAM 역할 또는 리소스 정책을 생성하는 앱 표시)** 확인란을 선택합니다. 사용자 지정 IAM 역할 및 리소스 정책에 대한 자세한 정보는 [애플리케이션 기능 승인](acknowledging-application-capabilities.md)을 참조하십시오.

1. 애플리케이션을 선택하여 권한, 기능 및 AWS 고객이 배포한 횟수와 같은 세부 정보를 봅니다.

   배포 수는 애플리케이션을 배포하려는 AWS 리전에 대해 표시됩니다.

1. 애플리케이션 세부 정보 페이지에서 AWS SAM 템플릿, 라이선스 및 readme 파일을 확인하여 애플리케이션의 권한 및 애플리케이션 리소스를 확인합니다. 이 페이지에서 공개적으로 공유된 애플리케이션에 대한 **소스 코드 URL**을 찾을 수도 있습니다. 애플리케이션에 중첩 애플리케이션이 포함되어 있으면 이 페이지에서 중첩 애플리케이션의 세부 정보를 볼 수도 있습니다.

1. **애플리케이션 설정** 섹션에서 애플리케이션을 구성합니다. 특정 애플리케이션 구성에 대한 지침은 애플리케이션의 readme 파일을 참조하십시오.

   예를 들어 구성 요구 사항에는 애플리케이션에서 액세스하고자 하는 리소스의 이름 지정이 포함될 수 있습니다. 이러한 리소스는 Amazon DynamoDB 테이블, Amazon S3 버킷 또는 Amazon API Gateway API일 수 있습니다.

1. **배포(Deploy)**를 선택합니다. 그러면 [**Deployment status**] 페이지로 이동하게 됩니다.
**참고**  
애플리케이션에 승인이 필요한 기능이 있는 경우 애플리케이션을 배포하기 전에 **I acknowledge this application creates custom IAM roles or resource polices(이 애플리케이션이 사용자 지정 IAM 역할이나 리소스 정책을 생성함을 승인함)** 확인란을 선택해야 합니다. 이렇게 하지 않으면 오류가 발생합니다. 사용자 지정 IAM 역할 및 리소스 정책에 대한 자세한 정보는 [애플리케이션 기능 승인](acknowledging-application-capabilities.md)을 참조하십시오.

1. **배포 상태** 페이지에서 배포의 진행 상황을 볼 수 있습니다. 배포가 완료될 때까지 기다리는 동안 다른 애플리케이션을 검색하고 찾아 Lambda 콘솔을 통해이 페이지로 돌아갈 수 있습니다.

애플리케이션이 성공적으로 배포되면 기존 AWS 도구를 사용하여 생성된 리소스를 검토하고 관리할 수 있습니다.

## 새 애플리케이션 배포(AWS CLI)
<a name="consuming-applications-cli"></a>

이 섹션에서는를 사용하여에서 새 애플리케이션을 배포 AWS Serverless Application Repository 하는 방법을 보여줍니다 AWS CLI. 기존 애플리케이션의 새 버전을 배포하는 지침은 [애플리케이션 업데이트](serverlessrepo-how-to-consume-new-version.md) 단원을 참조하십시오.

### 애플리케이션 기능 확인 및 승인(AWS CLI)
<a name="acknowledging-application-capabilities-api"></a>

를 사용하여 애플리케이션의 기능을 승인하려면 다음 단계를 AWS CLI따릅니다.

1. **애플리케이션의 기능을 검토합니다. ** 다음 AWS CLI 명령을 사용하여 애플리케이션의 기능을 검토합니다.

   ```
   aws serverlessrepo get-application \
   --application-id {{application-arn}}
   ```

   [requiredCapabilities](https://docs.aws.amazon.com/serverlessrepo/latest/devguide/applications-applicationid.html#applications-applicationid-prop-version-requiredcapabilities) 응답 속성에는 애플리케이션을 배포하려면 승인해야 하는 애플리케이션 기능 목록이 들어 있습니다. AWS SDKs에서 [GetApplication API](https://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/GetApplication)를 사용하여이 데이터를 가져올 수도 있습니다.

1. **변경 세트를 생성합니다. ** CloudFormation 변경 세트를 생성할 때 필요한 [기능](https://docs.aws.amazon.com/serverlessrepo/latest/devguide/applications-applicationid-changesets.html#applications-applicationid-changesets-createcloudformationchangesetinput-capabilities) 세트를 제공해야 합니다. 예를 들어 다음 AWS CLI 명령을 사용하여 기능을 확인하여 애플리케이션을 배포합니다.

   ```
   aws serverlessrepo create-cloud-formation-change-set \
   --application-id {{application-arn}} \
   --stack-name {{unique-name-for-cloud-formation-stack}} \
   --capabilities {{list-of-capabilities}}
   ```

   이 명령이 성공적으로 실행되면 변경 세트 ID가 반환됩니다. 다음 단계를 위해 변경 세트 ID가 필요합니다. AWS SDKs에서 [CreateCloudFormationChangeSet API](https://docs.aws.amazon.com/goto/WebAPI/serverlessrepo-2017-09-08/CreateCloudFormationChangeSet)를 사용하여 변경 세트를 생성할 수도 있습니다.

   예를 들어 다음 AWS CLI 명령은 사용자 지정 이름과 하나 이상의 중첩된 애플리케이션이 있는 [AWS::IAM::Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html) 리소스가 포함된 애플리케이션을 승인합니다.

   ```
   aws serverlessrepo create-cloud-formation-change-set \
   --application-id {{application-arn}} \
   --stack-name {{unique-name-for-cloud-formation-stack}} \
   --capabilities CAPABILITY_NAMED_IAM CAPABILITY_AUTO_EXPAND
   ```

1. **변경 세트를 실행합니다. ** 변경 세트를 실행하면 실제로 배포가 수행됩니다. 이전 단계에서 변경 세트를 생성할 때 반환된 변경 세트 ID를 입력합니다.

   다음 예제 AWS CLI 명령은 애플리케이션 변경 세트를 실행하여 애플리케이션을 배포합니다.

   ```
   aws cloudformation execute-change-set \
   --change-set-name {{changeset-id-arn}}
   ```

   또한 AWS SDKs에서 [ExecuteChangeSet API](https://docs.aws.amazon.com/goto/WebAPI/cloudformation-2010-05-15/CreateChangeSet)를 사용하여 변경 세트를 실행할 수 있습니다.

## 애플리케이션 스택 삭제
<a name="delete-application-stack"></a>

를 사용하여 이전에 배포한 애플리케이션을 삭제하려면 CloudFormation 스택 삭제와 동일한 절차를 AWS Serverless Application Repository따릅니다.
+ **AWS Management Console**:를 사용하여 애플리케이션을 삭제하려면 사용 설명서[의 CloudFormation 콘솔에서 스택 삭제](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-delete-stack.html)를 AWS Management Console참조하세요. *AWS CloudFormation * 
+ **AWS CLI**:를 사용하여 애플리케이션을 삭제하려면 사용 설명서의 [스택 삭제](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-cli-deleting-stack.html)를 AWS CLI참조하세요. *AWS CloudFormation * 