

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

# 를 사용하여 애플리케이션을 배포하는 옵션 AWS SAM
<a name="deploying-options"></a>

를 사용하면 애플리케이션을 수동으로 배포하고 배포를 자동화 AWS SAM할 수 있습니다. AWS SAM CLI를 사용하여 애플리케이션을 수동으로 배포합니다. 배포를 자동화하려면 파이프라인과 지속적 통합 및 지속적 배포(CI/CD) 시스템을 사용합니다. 이 섹션의 주제에서는 두 접근 방식 모두에 대한 정보를 제공합니다.

**Topics**
+ [AWS SAM CLI를 사용하여 수동으로 배포하는 방법](#serverless-sam-cli-using-package-and-deploy)
+ [CI/CD 시스템 및 파이프라인을 사용하여 배포](#serverless-deploying-ci-cd)
+ [점진적 배포](#serverless-deploying-gradual)
+ [AWS SAM CLI를 이용한 배포 문제 해결](#serverless-deploying-troubleshooting)
+ [자세히 알아보기](#serverless-sam-cli-using-invoke-learn)

## AWS SAM CLI를 사용하여 수동으로 배포하는 방법
<a name="serverless-sam-cli-using-package-and-deploy"></a>

로컬에서 서버리스 애플리케이션을 개발하고 테스트한 후 **[sam deploy](sam-cli-command-reference-sam-deploy.md)** 명령을 사용하여 애플리케이션을 배포할 수 있습니다.

프롬프트를 사용하여 배포를 AWS SAM 안내하려면 **--guided** 플래그를 지정합니다. 이 플래그를 지정하면 **sam deploy** 명령은 애플리케이션 아티팩트를 압축하여 Amazon Simple Storage Service(Amazon S3)(.zip 파일 아카이브용) 또는 Amazon Elastic Container Registry(Amazon ECR)(컨테이너 이미지용)에 업로드합니다. 그런 다음 명령은 애플리케이션을 AWS 클라우드에 배포합니다.

**예:**

```
# Deploy an application using prompts:
sam deploy --guided
```

## CI/CD 시스템 및 파이프라인을 사용하여 배포
<a name="serverless-deploying-ci-cd"></a>

AWS SAM 를 사용하면 파이프라인과 지속적 통합 및 지속적 배포(CI/CD) 시스템을 사용하여 배포를 자동화할 AWS SAM 수 있습니다. 파이프라인을 생성하고 서버리스 애플리케이션의 CI/CD 작업을 간소화하는 데 사용할 수 있습니다. 여러 CI/CD 시스템은 AWS SAM 빌드 컨테이너 이미지를 지원하며, AWS의 배포 모범 사례를 캡슐화하는 여러 CI/CD 시스템에 대한 기본 파이프라인 템플릿 세트 AWS SAM 도 제공합니다.

자세한 내용은 [CI/CD 시스템 및 파이프라인을 사용하여 로 배포 AWS SAM](deploying-cicd-overview.md) 단원을 참조하십시오.

## 점진적 배포
<a name="serverless-deploying-gradual"></a>

 AWS SAM 애플리케이션을 한 번에 모두 배포하지 않고 점진적으로 배포하려는 경우 AWS CodeDeploy 에서 제공하는 배포 구성을 지정할 수 있습니다. 자세한 정보는 *AWS CodeDeploy 사용자 가이드*의 [CodeDeploy에서 배포 구성으로 작업](https://docs.aws.amazon.com/codedeploy/latest/userguide/deployment-configurations.html)을 잠조하세요.

 AWS SAM 애플리케이션을 점진적으로 배포하도록 구성하는 방법에 대한 자세한 내용은 섹션을 참조하세요[를 사용하여 서버리스 애플리케이션 점진적으로 배포 AWS SAM](automating-updates-to-serverless-apps.md).

## AWS SAM CLI를 이용한 배포 문제 해결
<a name="serverless-deploying-troubleshooting"></a>

### AWS SAM CLI오류: “보안 제약 조건이 충족되지 않았음”
<a name="troubleshooting-security-constraints"></a>

**sam deploy --guided** 실행 중에 질문 `HelloWorldFunction may not have authorization defined, Is this okay? [y/N]`을 묻는 메시지가 표시됩니다. 이 프롬프트에 **N**(기본 응답)으로 응답하면 다음 오류가 표시됩니다.

```
 
Error: Security Constraints Not Satisfied
```

귀하가 배포하려는 애플리케이션에 승인 없이 Amazon API Gateway API가 구성되어 있을 수 있다는 메시지를 프롬프트가 표시합니다. 이 프롬프트에 **N**으로 응답하는 것은 괜찮지 않다고 말하는 것입니다.

이 문제를 해결할 수 있도록 다음 옵션이 제공됩니다.
+ 권한 부여를 통해 애플리케이션을 구성하세요. 권한 부여 구성에 대한 자세한 내용은을 잠조하세요[AWS SAM 템플릿을 사용하여 API 액세스 제어](serverless-controlling-access-to-apis.md)
+ 이 질문에 **Y**로 응답함으로써, 권한 없이 구성된 API Gateway API가 있는 애플리케이션을 배포해도 괜찮다는 의사를 표시하십시오.

## 자세히 알아보기
<a name="serverless-sam-cli-using-invoke-learn"></a>

서버리스 애플리케이션 배포의 실습 예제*는 전체 AWS SAM 워크숍*에서 다음을 참조하세요.
+ [모듈 3 - 수동 배포](https://s12d.com/sam-ws-en-manual-deploy) -를 사용하여 서버리스 애플리케이션을 빌드, 패키징 및 배포하는 방법을 알아봅니다 AWS SAM CLI.
+ [모듈 4 - CI/CD](https://s12d.com/sam-ws-en-cicd-deploy) - *지속적 통합 및 전달 (CI/CD)* 파이프라인을 만들어 빌드, 패키지, 배포 단계를 자동화하는 방법을 알아봅니다.