기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
sam local start-lambda
이 페이지에서는 AWS Serverless Application Model 명령줄 인터페이스(AWS SAM CLI) sam local start-lambda 하위 명령에 대한 참조 정보를 제공합니다.
-
에 대한 소개는 단원을 AWS SAM CLI참조하십시오. 란 무엇입니까 AWS SAM CLI?
-
sam local start-lambda하위 명령 사용에 대한 설명서는 섹션을 참조하세요 AWS SAM CLIsam local start-lambda를 사용한 테스트 소개.
sam local start-lambda 하위 명령은 에뮬레이션할 로컬 엔드포인트를 시작합니다 AWS Lambda.
용도
$sam local start-lambda<options>
옵션
--add-hostLIST-
호스트 이름과 IP 주소 매핑을 Docker 컨테이너의 호스트 파일에 전달합니다. 이 파라미터는 여러 번 전달할 수 있습니다.
예
예시:
--add-hostexample.com:127.0.0.1 --beta-features | --no-beta-features-
베타 기능을 허용 또는 거부합니다.
--config-envTEXT-
사용할 구성 파일의 기본 매개변수 값을 지정하는 환경 이름입니다. 기본값은 “기본값”입니다. 구성 파일에 대한 자세한 내용은 AWS SAMCLI구성 파일 섹션을 참조하세요.
--config-filePATH-
사용할 기본 매개변수 값이 들어 있는 구성 파일의 경로 및 파일 이름입니다. 기본값은 프로젝트 디렉터리의 루트에 있는 “samconfig.toml”입니다. 구성 파일에 대한 자세한 내용은 AWS SAMCLI구성 파일 섹션을 참조하세요.
--container-env-vars-
선택 사항입니다. 로컬 디버깅 시 이미지 컨테이너에 환경 변수를 전달합니다.
--container-hostTEXT-
로컬로 에뮬레이션된 Lambda 컨테이너의 호스트입니다. 기본값은
localhost입니다. macOS의 Docker 컨테이너에서 AWS SAMCLI를 실행하려는 경우host.docker.internal을 지정할 수 있습니다. 이외의 호스트에서 컨테이너를 실행하려면 원격 호스트의 IP 주소를 지정할 AWS SAM CLI수 있습니다. --container-host-interfaceTEXT-
컨테이너 포트가 바인딩해야 하는 호스트 네트워크 인터페이스의 IP 주소입니다. 기본값은
127.0.0.1입니다. 모든 인터페이스에 바인딩하는 데0.0.0.0을 사용합니다. --container-dnsTEXT-
Docker 컨테이너에 대한 사용자 지정 DNS 서버를 지정합니다. 이 파라미터를 여러 번 전달하여 여러 DNS 서버를 지정할 수 있습니다.
예
예시:
--container-dns8.8.8.8 --debug-
디버그 로깅을 켜서 AWS SAMCLI 에 의해 생성된 디버그 메시지를 인쇄하고 타임스탬프를 표시합니다.
--debug-argsTEXT-
디버거에 전달할 추가 인수입니다.
--debug-function-
선택 사항입니다.
--warm-containers이 지정된 시점에 디버그 옵션을 적용할 Lambda 함수를 지정합니다. 이 매개변수는--debug-port,--debugger-path및--debug-args에 적용됩니다. --debug-port, -dTEXT-
지정되면 Lambda 함수 컨테이너를 디버그 모드에서 시작하고 이 포트를 로컬 호스트에 노출합니다.
--debugger-pathTEXT-
Lambda 컨테이너에 마운트된 디버거의 호스트 경로입니다.
--docker-networkTEXT-
Lambda Docker 컨테이너가 연결해야 하는 기존 Docker 네트워크의 이름 또는 ID와 기본 브리지 네트워크입니다. 이것이 지정되면 Lambda 컨테이너는 기본 브리지 Docker 네트워크에만 연결됩니다.
--docker-volume-basedir, -vTEXT-
AWS SAM 파일이 있는 기본 디렉터리의 위치입니다. Docker가 원격 시스템에서 실행 중인 경우 Docker 시스템에 AWS SAM 파일이 있는 경로를 탑재하고 원격 시스템과 일치하도록이 값을 수정해야 합니다.
--env-vars, -nPATH-
Lambda 함수의 환경 변수에 대한 값을 포함하는 JSON 또는
.env파일입니다. 파일 형식이 자동으로 감지됩니다. --force-image-build-
CLI이 레이어를 사용하여 함수를 호출하는 데 사용된 이미지를 다시 구축해야 하는지를 지정합니다.
--help-
이 메시지를 표시한 후 종료합니다.
--hook-nameTEXT-
AWS SAMCLI 기능을 확장하는 데 사용되는 후크의 이름입니다.
허용되는 값:
terraform입니다. --hostTEXT-
바인딩할 로컬 호스트 이름 또는 IP 주소(기본값: ‘127.0.0.1’)입니다.
--invoke-imageTEXT-
로컬 함수 간접 호출에 사용하려는 컨테이너 이미지의 URI입니다.
를 사용하는 Lambda 함수의 경우 런타임 기본 이미지를
PackageType: Zip재정의합니다. 기본 사항으로 AWS SAM 은 Amazon ECR Public로부터 컨테이너 이미지를 가져옵니다. 다른 위치에서 이미지를 가져오려면 이 옵션을 사용합니다.를 사용하는 Lambda 함수의 경우
PackageType: Image이는 빌드된 템플릿ImageUri의를 재정의합니다. 템플릿을 수정하지 않고 로컬에서 다른 애플리케이션 이미지를 호출하는 데 사용합니다.이 옵션은 여러 번 지정할 수 있습니다. 이 옵션의 각 인스턴스는 문자열 또는 키-값 쌍을 사용할 수 있습니다. 문자열을 지정하는 경우 이는 애플리케이션의 모든 함수에 사용할 컨테이너 이미지의 URI입니다. 예를 들어
sam local start-lambda --invoke-image public.ecr.aws/sam/emu-python3.13입니다. 키-값 쌍을 지정하는 경우 키는 리소스 이름이고 값은 해당 리소스에 사용할 컨테이너 이미지의 URI입니다. 예를 들어sam local start-lambda --invoke-image public.ecr.aws/sam/emu-python3.13 --invoke-image Function1=amazon/aws-sam-cli-emulation-image-python3.13입니다. 키-값 쌍을 사용하면 리소스마다 다른 컨테이너 이미지를 지정할 수 있습니다. --layer-cache-basedirDIRECTORY-
템플릿에서 사용하는 레이어가 다운로드되는 위치를 기준으로 지정합니다.
--log-file, -lTEXT-
런타임 로그를 전송할 로그 파일입니다.
--no-memory-limit-
AWS SAM 템플릿에 메모리가 구성된 경우에도 로컬 간접 호출 중에 컨테이너의 메모리 제한을 제거합니다.
--no-watch-
와 함께 사용할 때 파일 감시를 비활성화합니다
--warm-containers. 지정된 경우는 소스 코드 또는 템플릿의 AWS SAM CLI 변경 사항을 모니터링하지 않으며 코드 수정 시 웜 컨테이너가 자동으로 다시 시작되지 않습니다. 로컬 변경 사항을 적용하려면 명령을 중지했다가 다시 실행합니다.파일 감시로 인해 대규모 모노리포지토리, 바이러스 백신 소프트웨어 스캔이 있는 환경 또는 여러 Lambda 함수가를 공유하는 프로젝트와 같이 CPU 또는 I/O 오버헤드가 높은 경우이 옵션을 사용합니다
CodeUri.이 지정되지 않은 경우이 옵션은 무시
--warm-containers됩니다. --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
--port, -pINTEGER-
수신할 로컬 포트 번호(기본값: ‘3001’)입니다.
--profileTEXT-
자격 증명을 가져오는 AWS 자격 증명 파일의 특정 프로필입니다.
--regionTEXT-
배포할 AWS 리전입니다. 예를 들어 us-east-1입니다.
--save-params-
명령줄에 제공한 파라미터를 AWS SAM 구성 파일에 저장합니다.
--shutdown-
종료 동작의 확장 처리를 테스트하기 위하여 간접 호출 완료 이후라도 종료 이벤트를 에뮬레이션합니다.
--skip-prepare-infra-
인프라를 변경하지 않은 경우 준비 단계를 건너뜁니다.
--hook-name옵션과 함께 사용합니다. --skip-pull-image-
CLI 이 Lambda 런타임에 대한 최신 도커 이미지를 가져오는 단계를 건너뛸지를 지정합니다.
--template, -tPATH-
AWS SAM 템플릿 파일입니다.
참고
이 옵션을 지정하면는 템플릿과 템플릿이 가리키는 로컬 리소스만 AWS SAM 로드합니다. 이 옵션은
--hook-name과 호환되지 않습니다. --terraform-plan-file-
Terraform AWS SAM를 CLI와 사용할 때 로컬 Terraform Cloud 계획 파일의 상대적 또는 절대적 경로입니다. 이 옵션을 사용하려면
--hook-name을terraform로 설정해야 합니다. --warm-containers[EAGER | LAZY]-
선택 사항입니다. AWS SAMCLI가 각 함수의 컨테이너를 관리하는 방법을 지정합니다.
사용 가능한 옵션은 다음 두 가지입니다.
-
EAGER: 모든 함수의 컨테이너는 시작 시 로드되며 호출과 호출 사이에도 유지됩니다. -
LAZY: 컨테이너는 각 함수를 처음 간접 호출할 때만 로드됩니다. 이러한 컨테이너들은 추가 호출 시에도 계속 유지됩니다.
-
예제
sam local start-lambda 하위 명령 사용에 대한 자세한 예제와 심층적인 단계별 설명은 sam local start-lambda를 사용한 테스트 소개 섹션을 참조하세요.