기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
sam sync
이 페이지에서는 AWS Serverless Application Model 명령줄 인터페이스(AWS SAM CLI) sam sync 명령에 대한 참조 정보를 제공합니다.
-
에 대한 소개는 단원을 AWS SAM CLI참조하십시오. 란 무엇입니까 AWS SAM CLI?
-
사용 설명서는 단원을 AWS SAM CLI참조하십시오AWS SAM CLI.
이 sam sync 명령은 로컬 애플리케이션 변경 내용을 AWS 클라우드에 동기화합니다.
용도
$sam sync<options>
옵션
--base-dir, -sDIRECTORY-
이 디렉터리에 대해 함수 또는 계층의 소스 코드에 대한 상대 경로를 확인합니다. 이 옵션을 사용하여 소스 코드 폴더의 상대 경로를 확인하는 방법을 변경할 수 있습니다. 기본적으로 상대 경로는 AWS SAM 템플릿의 위치와 관련하여 확인됩니다.
이 옵션은 빌드 중인 루트 애플리케이션 또는 스택의 리소스 외에도 중첩된 애플리케이션 또는 스택에도 적용됩니다. 또한 이 옵션은 다음 리소스 유형 및 속성에도 적용됩니다.
-
리소스 유형:
AWS::Serverless::Function속성:CodeUri -
리소스 유형:
AWS::Serverless::Function리소스 속성:Metadata항목:DockerContext -
리소스 유형:
AWS::Serverless::LayerVersion속성:ContentUri -
리소스 유형:
AWS::Lambda::Function속성:Code -
리소스 유형:
AWS::Lambda::LayerVersion속성:Content
-
--build-imageTEXT-
애플리케이션을 빌드할 때 사용할 컨테이너 이미지의 URI. 기본적으로는 Amazon Elastic Container Registry(Amazon ECR) Public의 컨테이너 이미지 리포지토리 URI를 AWS SAM 사용합니다. 다른 이미지를 사용하려면 이 옵션을 지정합니다.
단일 명령에서 이 옵션을 여러 번 사용할 수 있습니다. 각 옵션은 문자열 또는 키-값 쌍을 허용합니다.
-
문자열 - 애플리케이션의 모든 리소스가 사용할 컨테이너 이미지의 URI를 지정합니다. 다음은 예제입니다.
$sam sync --build-imageamazon/aws-sam-cli-build-image-python3.8 -
키-값 쌍 - 리소스 이름을 키로 지정하고 해당 리소스와 함께 사용할 컨테이너 이미지 URI를 값으로 지정합니다. 이 형식을 사용하면 애플리케이션의 각 리소스에 대해 서로 다른 컨테이너 이미지 URI를 지정할 수 있습니다. 다음은 예제입니다.
$sam sync --build-imageFunction1=amazon/aws-sam-cli-build-image-python3.8
이 옵션은
--use-container옵션이 지정된 경우에만 적용되며, 그렇지 않으면 오류가 발생합니다. -
--build-in-source | --no-build-in-source-
소스 폴더에서 프로젝트를 직접 빌드하기 위한
--build-in-source를 제공합니다.--build-in-source옵션은 다음과 같은 런타임과 빌드 메서드를 지원합니다.-
런타임 -
sam init --runtime옵션에서 지원하는 모든 Node.js 런타임. -
빌드 메서드 -
Makefile,esbuild.
--build-in-source옵션은 다음 옵션과 호환되지 않습니다.-
--use-container
기본값:
--no-build-in-source -
--capabilitiesLIST-
가 특정 스택을 생성할 CloudFormation 수 있도록 지정하는 기능 목록입니다. 일부 스택 템플릿에는의 권한에 영향을 미칠 수 있는 리소스가 포함될 수 있습니다 AWS 계정. 예를 들어 새 AWS Identity and Access Management (IAM) 사용자를 생성합니다. 기본값을 재정의하려면 이 옵션을 지정합니다. 유효 값에는 다음이 포함됩니다.
-
CAPABILITY_IAM
-
CAPABILITY_NAMED_IAM
-
CAPABILITY_RESOURCE_POLICY
-
CAPABILITY_AUTO_EXPAND
기본값:
CAPABILITY_NAMED_IAM및CAPABILITY_AUTO_EXPAND -
--code-
기본적으로는 애플리케이션의 모든 리소스를 AWS SAM 동기화합니다. 다음을 포함하는 코드 리소스만 동기화하려면 이 옵션을 지정합니다.
-
AWS::Serverless::Function -
AWS::Lambda::Function -
AWS::Serverless::LayerVersion -
AWS::Lambda::LayerVersion -
AWS::Serverless::Api -
AWS::ApiGateway::RestApi -
AWS::Serverless::HttpApi -
AWS::ApiGatewayV2::Api -
AWS::Serverless::StateMachine -
AWS::StepFunctions::StateMachine
코드 리소스를 동기화하려면를 통해 배포하는 대신 AWS 서비스 APIs 직접 AWS SAM 사용합니다 AWS CloudFormation. CloudFormation 스택을 업데이트하려면 sam sync --watch 또는를 실행합니다sam deploy.
-
--config-envTEXT-
사용할 구성 파일의 기본 매개변수 값을 지정하는 환경 이름입니다. 기본값은 “기본값”입니다. 구성 파일에 대한 자세한 내용은 AWS SAMCLI구성 파일 섹션을 참조하세요.
--config-filePATH-
사용할 기본 매개변수 값이 들어 있는 구성 파일의 경로 및 파일 이름입니다. 기본값은 프로젝트 디렉터리의 루트에 있는 “
samconfig.toml“입니다. 구성 파일에 대한 자세한 내용은 AWS SAMCLI구성 파일 섹션을 참조하세요. --dependency-layer | --no-dependency-layer-
동기화 프로세스의 속도를 높이기 위해 개별 함수의 종속성을 다른 계층으로 분리할지 여부를 지정합니다.
기본값:
--dependency-layer --express | --no-express-
인프라 배포에 CloudFormation Express 모드를 사용할지 여부를 지정합니다. 활성화되면 리소스 구성이 적용되면 스택 작업이 완료됩니다. 리소스는 백그라운드에서 계속 준비됩니다.
Express 모드는 인프라 동기화 경로에만 적용됩니다. 코드 전용 동기화(Lambda 함수 업데이트, 배포)는이 옵션을 우회 CloudFormation 하며이 옵션의 영향을 받지 않습니다.
기본값은
--no-express입니다.예정된 기본 변경 사항
기본값은 2026년 9월 1
--express일에 로 변경됩니다. --image-repositoryTEXT-
이 명령이 함수의 이미지를 업로드하는 Amazon Elastic Container Registry(Amazon ECR) 리포지토리의 이름.
Image패키지 유형으로 선언된 함수에 필요합니다. --image-repositoriesTEXT-
Amazon ECR 리포지토리 URI에 대한 함수의 매핑. 논리적 ID의 함수 참조. 다음은 그 예제입니다.
$sam sync --image-repositoriesFunction1=123456789012.dkr.ecr.us-east-1.amazonaws.com/my-repo이 옵션은 하나의 명령에서 여러 번 지정할 수 있습니다.
--kms-key-idTEXT-
Amazon S3 버킷에 저장된 아티팩트를 암호화하는 데 사용되는 AWS Key Management Service (AWS KMS) 키의 ID입니다. 이 옵션을 지정하지 않으면는 Amazon S3-managed 암호화 키를 AWS SAM 사용합니다.
--metadata-
템플릿에서 참조하는 모든 아티팩트에 연결할 메타데이터 맵.
--notification-arnsLIST-
스택과 CloudFormation 연결되는 Amazon Simple Notification Service(Amazon SNS) 주제 ARNs의 목록입니다.
--no-use-container-
IDE 툴킷이 기본 동작을 설정하는 데 사용할 수 있는 옵션입니다.
--parameter-overrides-
CloudFormation 파라미터가 포함된 문자열은 키-값 페어로 인코딩됩니다. AWS Command Line Interface ()와 동일한 형식을 사용합니다AWS CLI. AWS SAM CLI 형식은 명시적 키 및 값 키워드이며 각 재정의는 공백으로 구분됩니다. 다음은 두 가지 예제입니다.
--parameter-overrides ParameterKey=hello,ParameterValue=world--parameter-overrides ParameterKey=hello,ParameterValue=world ParameterKey=example1,ParameterValue=example2 ParameterKey=apple,ParameterValue=banana
--resourceTEXT-
동기화할 리소스 유형을 지정합니다. 여러 리소스를 동기화하기 위해 이 옵션을 여러 번 지정할 수 있습니다. 이 옵션은
--code옵션과 함께 지원됩니다. 이 값은--code에 나열된 리소스 중 하나여야 합니다. 예를 들어--resource AWS::Serverless::Function --resource AWS::Serverless::LayerVersion입니다. --resource-idTEXT-
동기화할 리소스 ID를 지정합니다. 여러 리소스를 동기화하기 위해 이 옵션을 여러 번 지정할 수 있습니다. 이 옵션은
--code옵션과 함께 지원됩니다. 예를 들어--resource-id Function1 --resource-id Function2입니다. --role-arnTEXT-
변경 세트를 적용할 때가 CloudFormation 수임하는 IAM 역할의 Amazon 리소스 이름(ARN)입니다.
--s3-bucketTEXT-
이 명령이 CloudFormation 템플릿을 업로드하는 Amazon Simple Storage Service(Amazon S3) 버킷의 이름입니다. 템플릿이 51,200바이트를 초과하는 경우
--s3-bucket또는--resolve-s3옵션이 필요합니다.--s3-bucket및--resolve-s3옵션을 모두 지정하면 오류가 발생합니다. --s3-prefixTEXT-
Amazon S3 버킷에 업로드하는 아티팩트의 이름에 추가되는 접두사. 접두사 이름은 Amazon S3 버킷의 경로 이름(폴더 이름)입니다. 이는
Zip패키지 유형으로 선언된 함수에만 적용됩니다. --save-params-
명령줄에 제공한 파라미터를 AWS SAM 구성 파일에 저장합니다.
--skip-deploy-sync | --no-skip-deploy-sync-
필요하지 않은 경우 초기 인프라 동기화를 건너뛰는
--skip-deploy-sync를 지정합니다. AWS SAM CLI는 로컬 AWS SAM 템플릿을 배포된 CloudFormation 템플릿과 비교하고 변경이 감지된 경우에만 배포를 수행합니다.--no-skip-deploy-sync가sam sync실행될 때마다 CloudFormation 배포를 수행하도록 지정합니다.자세한 내용은 초기 CloudFormation 배포 건너뛰기를 참조하세요.
기본값:
--skip-deploy-sync --stack-nameTEXT-
애플리케이션의 CloudFormation 스택 이름입니다.
이 옵션은 필수입니다.
-
생성되거나 업데이트된 스택과 연결할 태그 목록입니다. CloudFormation 는 이러한 태그를 지원하는 스택의 리소스에도 전파합니다.
--template-file, --template, -tPATH-
AWS SAM 템플릿이 위치한 경로 및 파일 이름입니다.
참고
이 옵션을 지정하면는 템플릿과 템플릿이 가리키는 로컬 리소스만 AWS SAM 배포합니다.
--use-container, -u-
함수가 기본적으로 컴파일된 종속성이 있는 패키지에 의존하는 경우이 옵션을 사용하여 AWS Lambda유사 Docker 컨테이너 내에 함수를 빌드합니다.
참고
현재 이 옵션은
--dependency-layer와 호환되지 않습니다.--use-container를--dependency-layer와 함께 사용하면 AWS SAMCLI는 이를 알리고--no-dependency-layer를 계속 사용합니다. --watch-
로컬 애플리케이션의 변경 사항을 감시하고에 자동으로 동기화하는 프로세스를 시작합니다 AWS 클라우드. 기본적으로이 옵션을 지정하면는 애플리케이션의 모든 리소스를 업데이트할 때 AWS SAM 동기화합니다. 이 옵션을 사용하면가 초기 CloudFormation 배포를 AWS SAM 수행합니다. 그런 다음 AWS 서비스 APIs AWS SAM 사용하여 코드 리소스를 업데이트합니다. AWS SAM 는 AWS SAM 템플릿을 업데이트할 때 CloudFormation 를 사용하여 인프라 리소스를 업데이트합니다.
--watch-excludeTEXT-
파일 또는 폴더를 파일 변경 관찰 대상에서 제외합니다. 이 옵션을 사용하려면
--watch도 제공해야 합니다.이 옵션은 다음과 같은 키-값 페어를 수신합니다.
-
키 — 애플리케이션에 있는 Lambda 함수의 논리적 ID.
-
값 - 제외할 관련 파일 이름 또는 폴더.
--watch-exclude옵션으로 지정된 파일 또는 폴더를 업데이트하면 AWS SAM CLI가 동기화를 시작하지 않습니다. 하지만 다른 파일이나 폴더에 대한 업데이트로 인해 동기화가 시작하면 해당 파일 또는 폴더가 해당 동기화에 포함됩니다.단일 명령에서 이 옵션을 여러 번 제공할 수 있습니다.
-
예제
이 명령을 사용하는 예제는 sam sync 명령의 옵션 섹션을 참조하세요.