

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

# AWS SAM CLI 구성
<a name="using-sam-cli-configure"></a>

의 이점 중 하나는 반복적인 작업을 제거하여 개발자의 시간을 최적화한다는 AWS SAM 것입니다. AWS SAM CLI 에는이 용도로 `samconfig` 라는 구성 파일이 포함되어 있습니다. 기본적으로에 대한 구성 AWS SAM CLI은 필요하지 않지만가 구성 파일에서 사용자 지정 파라미터를 대신 참조하도록 허용하여 더 적은 파라미터로 명령을 실행할 수 AWS SAM 있도록 구성 파일을 업데이트할 수 있습니다. 다음 표의 예제에서는 명령을 최적화하는 방법을 보여줍니다.


| 원본 | `samconfig`로 최적화 | 
| --- | --- | 
| **sam build --cached --parallel --use-containers** | **sam build** | 
| **sam local invoke --env-vars locals.json** | **sam local invoke** | 
| **sam local start-api --env-vars locals.json --warm-containers EAGER** | **sam local start-api** | 

 AWS SAM CLI는 개발자가 서버리스 애플리케이션을 생성, 개발 및 배포하는 데 도움이 되는 일련의 명령을 제공합니다. 이러한 각 명령은 애플리케이션 및 개발자의 기본 설정에 따라 선택적 플래그를 사용하여 구성할 수 있습니다. 자세한 내용은 [GitHub에서AWS SAM CLI 콘텐츠](https://github.com/aws/aws-sam-cli)를 참조하세요.

이 섹션의 주제에서는 [AWS SAMCLI구성 파일](serverless-sam-cli-config.md)을 생성하고 해당 기본 설정을 사용자 지정하여 서버리스 애플리케이션의 개발 시간을 최적화하는 방법을 보여줍니다.

**Topics**
+ [구성 파일(`samconfig` 파일)을 생성하는 방법](#using-sam-cli-configure-create)
+ [프로젝트 설정 구성](#using-sam-cli-configure-project)
+ [자격 증명 및 기본 설정 구성](#using-sam-cli-configure-basic)

## 구성 파일(`samconfig` 파일)을 생성하는 방법
<a name="using-sam-cli-configure-create"></a>

 AWS SAM CLI 구성 파일(파일 이름 `samconfig`)은 일반적으로 TOML 구조를 사용하지만 YAML 형식일 수도 있는 텍스트 파일입니다. AWS 빠른 시작 템플릿을 사용하는 경우이 파일은 **sam init** 명령을 실행할 때 생성됩니다. 애플리케이션을 배포할 때 **sam deploy -\$1-guided** 명령을 사용하여 이 파일을 업데이트할 수 있습니다.

기본값을 사용하여 배포를 완료하면 `samconfig` 파일에 `default`라는 프로파일이 포함됩니다. **deploy** 명령을 다시 실행하면가이 프로파일의 저장된 구성 설정을 AWS SAM 적용합니다.

`samconfig` 파일의 이점은 배포 명령 외에도 사용 가능한 다른 명령에 대한 구성 설정을 AWS SAM 저장하는 것입니다. 새 배포에서 생성된 이러한 값 외에도를 사용하여 개발자 워크플로의 다른 측면을 단순화할 수 있도록 `samconfig` 파일에 설정할 수 있는 여러 속성이 있습니다 AWS SAM CLI.

## 프로젝트 설정 구성
<a name="using-sam-cli-configure-project"></a>

에 사용할 구성 파일에서 명령 파라미터 값과 같은 AWS SAM CLI 프로젝트별 설정을 지정할 수 있습니다 AWS SAM CLI. 이 구성에 대한 자세한 정보는 [AWS SAMCLI구성 파일](serverless-sam-cli-config.md) 섹션을 참조하세요.

### 구성 파일 사용
<a name="using-sam-cli-configure-project-using"></a>

구성 파일은 환경, 명령 및 파라미터 값으로 구성됩니다. 자세한 내용은 [구성 파일 기본 사항](serverless-sam-cli-config.md#serverless-sam-cli-config-basics) 단원을 참조하십시오.

**새 환경을 구성하려면**

1. 구성 파일에 새 환경을 지정합니다.

   다음은 새 `prod` 환경을 지정하는 예제입니다.

------
#### [ TOML ]

   ```
   [prod.global.parameters]
   ```

------
#### [ YAML ]

   ```
   prod:
     global:
       parameters:
   ```

------

1. 구성 파일의 파라미터 섹션에서 파라미터 값을 키-값 쌍으로 지정합니다.

   다음은 `prod` 환경에 대한 애플리케이션 스택 이름을 지정하는 예제입니다. 

------
#### [ TOML ]

   ```
   [prod.global.parameters]
   stack_name = "prod-app"
   ```

------
#### [ YAML ]

   ```
   prod:
     global:
       parameters:
         stack_name: prod-app
   ```

------

1. `--config-env` 옵션을 사용하여 사용할 환경을 지정합니다.

   다음은 예제입니다.

   ```
   $ sam deploy --config-env "prod"
   ```

**파라미터 값을 구성하려면**

1. 파라미터 값을 구성하려는 AWS SAMCLI 명령을 지정합니다. 모든 AWS SAMCLI 명령의 파라미터 값을 구성하려면 `global` 식별자를 사용합니다.

   다음은 `default` 환경 `sam deploy` 명령에 대한 파라미터 값을 지정하는 예제입니다.

------
#### [ TOML ]

   ```
   [default.deploy.parameters]
   confirm_changeset = true
   ```

------
#### [ YAML ]

   ```
   default:
     deploy:
       parameters:
         confirm_changeset: true
   ```

------

   다음은 `default` 환경의 모든 AWS SAMCLI 명령에 대한 파라미터 값을 지정하는 예입니다.

------
#### [ TOML ]

   ```
   [default.global.parameters]
   stack_name = "sam-app"
   ```

------
#### [ YAML ]

   ```
   default:
     global:
       parameters:
         stack_name: sam-app
   ```

------

1.  AWS SAMCLI 대화형 흐름을 통해 파라미터 값을 지정하고 구성 파일을 수정할 수도 있습니다.

   다음은 `sam deploy --guided` 대화형 흐름에 대한 예제입니다.

   ```
   $ sam deploy --guided
   
   Configuring SAM deploy
   ======================
   
       Looking for config file [samconfig.toml] :  Found
       Reading default arguments  :  Success
   
       Setting default arguments for 'sam deploy'
       =========================================
       Stack Name [sam-app]: ENTER
       AWS Region [us-west-2]: ENTER
       #Shows you resources changes to be deployed and require a 'Y' to initiate deploy
       Confirm changes before deploy [Y/n]: n
       #SAM needs permission to be able to create roles to connect to the resources in your template
       Allow SAM CLI IAM role creation [Y/n]: ENTER
       #Preserves the state of previously provisioned resources when an operation fails
       Disable rollback [y/N]: ENTER
       HelloWorldFunction may not have authorization defined, Is this okay? [y/N]: y
       Save arguments to configuration file [Y/n]: ENTER
       SAM configuration file [samconfig.toml]: ENTER
       SAM configuration environment [default]: ENTER
   ```

자세한 내용은 [구성 파일 생성 및 수정](serverless-sam-cli-config.md#serverless-sam-cli-config-using) 단원을 참조하십시오.

### 예제
<a name="using-sam-cli-configure-project-examples"></a>

#### 기본 TOML 예제
<a name="using-sam-cli-configure-project-examples-toml"></a>

다음은 `samconfig.toml` 구성 파일의 예입니다.

```
...
version = 0.1

[default]
[default.global]
[default.global.parameters]
stack_name = "sam-app"

[default.build.parameters]
cached = true
parallel = true

[default.deploy.parameters]
capabilities = "CAPABILITY_IAM"
confirm_changeset = true
resolve_s3 = true

[default.sync.parameters]
watch = true

[default.local_start_api.parameters]
warm_containers = "EAGER"

[prod]
[prod.sync]
[prod.sync.parameters]
watch = false
```

#### 기본 YAML 예제
<a name="using-sam-cli-configure-project-examples-yaml"></a>

다음은 `samconfig.yaml` 구성 파일의 예입니다.

```
version 0.1
default:
  global:
    parameters:
      stack_name: sam-app
  build:
    parameters:
      cached: true
      parallel: true
  deploy:
    parameters:
      capabilities: CAPABILITY_IAM
      confirm_changeset: true
      resolve_s3: true
  sync:
    parameters:
      watch: true
  local_start_api:
    parameters:
      warm_containers: EAGER
prod:
  sync:
    parameters:
      watch: false
```

## 자격 증명 및 기본 설정 구성
<a name="using-sam-cli-configure-basic"></a>

 AWS Command Line Interface (AWS CLI)를 사용하여 AWS 자격 증명, 기본 리전 이름 및 기본 출력 형식과 같은 기본 설정을 구성합니다. 구성한 후에는 이러한 설정을 AWS SAMCLI와 함께 사용할 수 있습니다. 자세한 내용은 *AWS Command Line Interface 사용 설명서*의 다음 세션을 참조하세요.
+ [구성 기본 사항](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-quickstart.html)
+ [구성 및 자격 증명 파일 설정](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html)
+ [의 명명된 프로필 AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html)
+ [IAM Identity Center 지원 명명된 프로파일 사용](https://docs.aws.amazon.com/cli/latest/userguide/sso-using-profile.html)

빠른 설정 지침은 [5단계: AWS CLI 를 사용하여 AWS 자격 증명 구성](prerequisites.md#prerequisites-configure-credentials) 섹션을 참조하세요.