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-api
Esta página fornece informações de referência para o AWS Serverless Application Model sam local start-api subcomando Command Line Interface (AWS SAMCLI).
-
Para obter uma introdução ao AWS SAMCLI, consulte O que é o AWS SAMCLI?
-
Para obter a documentação sobre o uso do AWS SAMCLI
sam local start-apisubcomando, consulteIntrodução aos testes com sam local start-api.
O sam local start-api subcomando executa suas AWS Lambda funções localmente para testar por meio de um host de servidor HTTP local.
Usage
$sam local start-api<options>
Opções
--add-hostLIST-
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-hostexample.com:127.0.0.1 --beta-features | --no-beta-features-
Permita ou negue recursos beta.
--config-envTEXT-
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-filePATH-
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-hostTEXT-
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 especificarhost.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-interfaceTEXT-
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. Use0.0.0.0para vincular a todas as interfaces. --container-dnsTEXT-
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-dns8.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-argsTEXT-
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-pathe--debug-args. --debug-port, -dTEXT-
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-pathTEXT-
O caminho do host para um depurador que será montado no contêiner Lambda.
--docker-networkTEXT-
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, -vTEXT-
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, -nPATH-
O JSON ou
.envarquivo que contém valores para as variáveis de ambiente da função Lambda. O formato do arquivo é detectado automaticamente. --force-image-build-
Especifica se AWS SAM CLI deve reconstruir a imagem usada para invocar funções com camadas.
--help-
Mostra esta mensagem e sai.
--hook-nameTEXT-
O nome do hook usado para estender a funcionalidade AWS SAMCLI.
Valores aceitos:
terraform. --hostTEXT-
O nome do host local ou endereço IP ao qual se vincular (padrão: '127.0.0.1').
--invoke-imageTEXT-
O URI da imagem de contêiner que você deseja usar para suas funções do Lambda.
Para funções Lambda com
PackageType: Zip, isso substitui a imagem base do tempo de execução. Por padrão, AWS SAM extrai a imagem do contêiner do Amazon ECR Public. Use essa opção para extrair a imagem de outro localização.Para funções do Lambda com
PackageType: 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-api --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-api --invoke-image public.ecr.aws/sam/emu-python3.13 --invoke-image Function1=amazon/aws-sam-cli-emulation-image-python3.13Com pares de valores-chave, você pode especificar imagens de contêiner diferentes para recursos diferentes. --layer-cache-basedirDIRECTORY-
Especifica a localização com base na qual as camadas que seu modelo usa são baixadas.
--log-file, -lTEXT-
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, -pINTEGER-
O número da porta local para escutar (padrão: '3000').
--profileTEXT-
O perfil específico do seu arquivo de credenciais que obtém as AWS credenciais.
--regionTEXT-
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 deve ignorar a extração da imagem mais recente do Docker para o runtime do Lambda.
--ssl-cert-filePATH-
Caminho para o arquivo do certificado SSL (padrão: Nenhum). Ao usar essa opção, a opção
--ssl-key-filetambém deve ser usada. --ssl-key-filePATH-
Caminho para o arquivo de chave SSL (padrão: Nenhum). Ao usar essa opção, a opção
--ssl-cert-filetambém deve ser usada. --static-dir, -sTEXT-
Todos os arquivos de ativos estáticos (por exemplo,CSS/JavaScript/HTML) localizados nesse diretório são apresentados em
/. --template, -tPATH-
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.
--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-nameseja definida comoterraform. --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
O exemplo a seguir inicia um servidor local, permitindo que você teste a aplicação por meio da API. Para que esse comando funcione, a aplicação deve estar instalada e o Docker deve estar em execução.
$sam local start-api --port 3000