View a markdown version of this page

sam local start-lambda - AWS Serverless Application Model

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

sam local start-lambda

Esta página fornece informações de referência para o AWS Serverless Application Model sam local start-lambda subcomando Command Line Interface (AWS SAMCLI).

O subcomando sam local start-lambda inicia um endpoint local para emular AWS Lambda.

Usage

$ sam local start-lambda <options>

Opções

--add-host LIST

Passa um nome de host para mapeamento de endereço IP para o arquivo host do contêiner do Docker. Esse parâmetro pode ser passado várias vezes.

exemplo

Exemplo: --add-host example.com:127.0.0.1

--beta-features | --no-beta-features

Permita ou negue recursos beta.

--config-env TEXT

O nome do ambiente que especifica os valores de parâmetros padrão no arquivo de configuração a serem usados. O valor padrão é “padrão”. Para obter mais informações sobre esses arquivos de configuração, consulte Arquivo de configuração do AWS SAM CLI.

--config-file PATH

O caminho e o nome do arquivo de configuração contendo valores de parâmetros padrão a serem usados. O valor padrão é “samconfig.toml” na raiz do diretório do projeto. Para obter mais informações sobre esses arquivos de configuração, consulte Arquivo de configuração do AWS SAM CLI.

--container-env-vars

Opcional. Passe variáveis de ambiente para o contêiner de imagem ao depurar localmente.

--container-host TEXT

Host do contêiner Lambda emulado localmente. O valor padrão é localhost. Se você quiser executar AWS SAMCLI em um contêiner do Docker no macOS, você pode especificar host.docker.internal. Se você quiser executar o contêiner em um host diferente AWS SAMCLI, você pode especificar o endereço IP do host remoto.

--container-host-interface TEXT

O endereço IP da interface de rede do host à qual as portas do contêiner devem se vincular. O valor padrão é 127.0.0.1. Use 0.0.0.0 para vincular a todas as interfaces.

--container-dns TEXT

Especifica um servidor DNS personalizado para o contêiner Docker. Esse parâmetro pode ser passado várias vezes para especificar vários servidores DNS.

exemplo

Exemplo: --container-dns 8.8.8.8

--debug

Ativa o registro de depuração para imprimir a mensagem de depuração gerada pelo AWS SAMCLI e exibir timestamps.

--debug-args TEXT

Argumentos adicionais a serem transmitidos para o depurador.

--debug-function

Opcional. Especifica a função do Lambda para aplicar opções de depuração quando for especificado como --warm-containers. Esse parâmetro se aplica a --debug-port, --debugger-path e --debug-args.

--debug-port, -d TEXT

Quando especificado, inicia o contêiner da função do Lambda no modo de depuração e expõe essa porta no host local.

--debugger-path TEXT

O caminho do host para um depurador a ser montado no contêiner Lambda.

--docker-network TEXT

Especifica o nome ou ID de uma rede Docker existente à qual os contêineres do Docker do Lambda devem se conectar, juntamente com a rede de ponte padrão. Se não for especificado, os contêineres do Lambda se conectarão somente à rede de Docker de ponte padrão.

--docker-volume-basedir, -v TEXT

A localização do diretório base em que o AWS SAM arquivo existe. Se o Docker estiver sendo executado em uma máquina remota, você deverá montar o caminho em que o AWS SAM arquivo existe na máquina Docker e modificar esse valor para corresponder à máquina remota.

--env-vars, -n PATH

O JSON ou .env arquivo que contém valores para as variáveis de ambiente da função Lambda. O formato do arquivo é detectado automaticamente.

--force-image-build

Especifique se CLI deve reconstruir a imagem usada para invocar funções com camadas.

--help

Mostra esta mensagem e sai.

--hook-name TEXT

O nome do hook usado para estender a funcionalidade AWS SAMCLI.

Valores aceitos: terraform.

--host TEXT

O nome do host local ou endereço IP ao qual se vincular (padrão: '127.0.0.1').

--invoke-image TEXT

O URI da imagem do contêiner que você deseja usar para a invocação da função local.

Para funções Lambda comPackageType: Zip, isso substitui a imagem base do tempo de execução. Por padrão, AWS SAM extrai a imagem de contêiner do Amazon ECR Public. Use essa opção para extrair a imagem de outro localização.

Para funções do Lambda comPackageType: Image, isso substitui o modelo criadoImageUri. Use isso para invocar uma imagem de aplicativo diferente localmente sem modificar seu modelo.

Especifique essa opção várias vezes. Cada instância dessa opção pode ter uma string ou um par de valores-chave. Se você especificar uma string, ela será a URI da imagem do contêiner a ser usada para todas as funções em seu aplicativo. Por exemplo, sam local start-lambda --invoke-image public.ecr.aws/sam/emu-python3.13. Se você especificar um par de valores-chave, a chave será o nome do recurso e o valor será o URI da imagem do contêiner a ser usada para esse recurso. Por exemplo, .sam local start-lambda --invoke-image public.ecr.aws/sam/emu-python3.13 --invoke-image Function1=amazon/aws-sam-cli-emulation-image-python3.13 Com pares de valores-chave, você pode especificar imagens de contêiner diferentes para recursos diferentes.

--layer-cache-basedir DIRECTORY

Especifica a localização com base na qual as camadas que seu modelo usa são baixadas.

--log-file, -l TEXT

O arquivo de log para o qual enviar os registros de runtime.

--no-memory-limit

Remove a limitação de memória no contêiner durante a chamada local, mesmo quando a memória está configurada no AWS SAM modelo.

--parameter-overrides

Uma string que contém substituições de CloudFormation parâmetros codificadas como pares de valores-chave. Use o mesmo formato do AWS Command Line Interface (AWS CLI). O formato da CLI do AWS SAMé uma palavra-chave explícita de chave e valor e cada substituição é separada por um espaço. Veja dois exemplos a seguir:

  • --parameter-overrides ParameterKey=hello,ParameterValue=world

  • --parameter-overrides ParameterKey=hello,ParameterValue=world ParameterKey=example1,ParameterValue=example2 ParameterKey=apple,ParameterValue=banana

--port, -p INTEGER

O número da porta local para escutar (padrão: '3001').

--profile TEXT

O perfil específico do seu arquivo de credenciais que obtém as AWS credenciais.

--region TEXT

A AWS região para a qual implantar. Por exemplo, us-east-1.

--save-params

Salve os parâmetros que você fornece na linha de comando no arquivo AWS SAM de configuração.

--shutdown

Emula um evento de desligamento após a conclusão da invocação, a fim de testar o tratamento da extensão sobre o comportamento de desligamento.

--skip-prepare-infra

Ignora a fase de preparação se nenhuma alteração na infraestrutura tiver sido feita. Execute com a opção --hook-name.

--skip-pull-image

Especifica se o comando CLI deve ignorar a extração da imagem do Docker mais recente para o runtime do Lambda.

--template, -t PATH

O arquivo AWS SAM de modelo.

nota

Se você especificar essa opção, AWS SAM carrega somente o modelo e os recursos locais para os quais ele aponta. Essa opção não é compatível com --hook-name.

--terraform-plan-file

O caminho relativo ou absoluto para seu arquivo de Terraform plano local ao usar o AWS SAMCLI com Terraform Cloud. Essa opção exige que --hook-name seja definida como terraform.

--warm-containers [EAGER | LAZY]

Opcional. Especifica como AWS SAMCLI gerencia os contêineres para cada função.

Existem duas opções:

  • EAGER: os contêineres de todas as funções são carregados na inicialização e persistem entre as invocações.

  • LAZY: os contêineres são carregados somente quando cada função é invocada pela primeira vez. Esses contêineres persistem para invocações adicionais.

Exemplo

Para obter um exemplo detalhado e uma explicação aprofundada sobre o uso do subcomando sam local start-lambda, consulte Introdução aos testes com sam local start-lambda.