sam local start-lambda - AWS Serverless Application Model

sam local start-lambda

Esta página proporciona información de referencia para el subcomando sam local start-lambda de la Interfaz de línea de comando de AWS Serverless Application Model (AWS SAMCLI).

El subcomando sam local start-lambda inicia un punto de conexión local para emular AWS Lambda.

Uso

$ sam local start-lambda <options>

Opciones

--add-host LIST

Pasa una asignación de nombre de host a dirección IP al archivo de host del contenedor de Docker. Este parámetro se puede pasar varias veces.

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

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

Permitir o denegar las características beta.

--config-env TEXT

El nombre del entorno que especifica los valores de los parámetros predeterminados del archivo de configuración que se va a utilizar. El valor por defecto es «predeterminado». Para obtener más información sobre los archivos de configuración, consulta Archivo de configuración de la CLI de AWS SAM.

--config-file PATH

La ruta y el nombre del archivo de configuración que contiene los valores de parámetros predeterminados que se van a utilizar. El valor predeterminado es «samconfig.toml» en la raíz del directorio del proyecto. Para obtener más información sobre los archivos de configuración, consulta Archivo de configuración de la CLI de AWS SAM.

--container-env-vars

Opcional. Al realizar la depuración local, pasa las variables de entorno al contenedor de imágenes.

--container-host TEXT

Host del contenedor Lambda emulado localmente. El valor predeterminado es localhost. Si quiere ejecutar la CLI de AWS SAM en un contenedor Docker en macOS, puede especificar host.docker.internal. Si quiere ejecutar el contenedor en un host diferente al de la CLI de AWS SAM, puede especificar la dirección IP del host remoto.

--container-host-interface TEXT

La dirección IP de la interfaz de red del host a la que deben enlazarse los puertos del contenedor. El valor predeterminado es 127.0.0.1. Utiliza 0.0.0.0 para enlazarse a todas las interfaces.

--debug

Activa el registro de depuración para imprimir el mensaje de depuración que genera la CLI de AWS SAM y muestra las marcas temporales.

--debug-args TEXT

Los argumentos adicionales que se pasarán al depurador.

--debug-function

Opcional. Especifica la función de Lambda a la que se aplicarán las opciones de depuración cuando --warm-containers se especifica. Este parámetro se aplica a --debug-port, --debugger-path y --debug-args.

--debug-port, -d TEXT

Cuando se especifica, inicia el contenedor de funciones de Lambda en modo de depuración y expone este puerto en el host local.

--debugger-path TEXT

La ruta del host a un depurador que se montará en el contenedor de Lambda.

--docker-network TEXT

El nombre o el ID de una red de Docker existente a la que deben conectarse los contenedores de Lambda y Docker, junto con la red en modo puente predeterminada. Si esto no se especifica, los contenedores de Lambda se conectan solo a la red Docker en modo puente predeterminada.

--docker-volume-basedir, -v TEXT

La ubicación del directorio base en el que se encuentra el archivo AWS SAM. Si Docker se ejecuta en una máquina remota, debe montar la ruta en la que se encuentra el archivo AWS SAM en la máquina Docker y modificar este valor para que coincida con la máquina remota.

--env-vars, -n PATH

Archivo JSON que contiene valores para las variables de entorno de la función de Lambda.

--force-image-build

Especifica si la CLI debe reconstruir la imagen utilizada para invocar funciones con capas.

--help

Muestra este mensaje y sale.

--hook-name TEXT

El nombre del enlace que se utiliza para ampliar la funcionalidad de la CLI de AWS SAM.

Valores aceptados: terraform.

--host TEXT

El nombre de host local o la dirección IP a la que se va a vincular (predeterminado: «127.0.0.1»).

--invoke-image TEXT

El URI de la imagen del contenedor que quiere usar para la invocación de la función local. Por defecto, AWS SAM extrae la imagen del contenedor desde Amazon ECR Public. Utiliza esta opción para extraer la imagen desde otra ubicación.

Por ejemplo, sam local start-lambda MyFunction --invoke-image amazon/aws-sam-cli-emulation-image-python3.8.

--layer-cache-basedir DIRECTORY

Especifica la ubicación basada en el lugar en el que se descargan las capas que utiliza la plantilla.

--log-file, -l TEXT

El archivo de registro al que se van a enviar los registros de tiempo de ejecución.

--no-memory-limit

Elimina la limitación de memoria en el contenedor durante la invocación local, incluso cuando la memoria está configurada en la plantilla de AWS SAM.

--parameter-overrides

Una cadena que contiene anulaciones de parámetros CloudFormation codificadas como pares de clave-valor. Usa el mismo formato que AWS Command Line Interface (AWS CLI). El formato de la CLI de AWS SAM es de palabras clave y de valor explícitas, y cada modificación está separada por un espacio. A continuación, se incluyen dos ejemplos:

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

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

--port, -p INTEGER

El número de puerto local en el que se va a escuchar (valor predeterminado: «3001»).

--profile TEXT

El perfil específico de su archivo de credenciales que obtiene las credenciales de AWS.

--region TEXT

La región de AWS en la que se va a realizar la implementación. Por ejemplo, us-east-1.

--save-params

Guarda los parámetros que proporciones en la línea de comandos en el archivo de configuración de AWS SAM.

--shutdown

Emula un evento de apagado una vez finalizada la invocación, para probar la forma en que la extensión gestiona el comportamiento del apagado.

--skip-prepare-infra

Omite la fase de preparación si no se ha realizado ningún cambio en la infraestructura. Ejecuta con la opción --hook-name.

--skip-pull-image

Especifica si la CLI debe omitir la extracción de la última imagen de Docker para el tiempo de ejecución de Lambda.

--template, -t PATH

El archivo de la plantilla AWS SAM.

nota

Si especificas esta opción, AWS SAM carga solo la plantilla y los recursos locales a los que apunta. Esta opción no es compatible con --hook-name.

--terraform-plan-file

La ruta relativa o absoluta al archivo del plan local Terraform cuando se utiliza la CLI de AWS SAM con Terraform Cloud. Esta opción requiere que --hook-name esté configurado en terraform.

--warm-containers [EAGER | LAZY]

Opcional. Especifica cómo la CLI de AWS SAM administra los contenedores para cada función.

Hay dos opciones disponibles:

  • EAGER: los contenedores de todas las funciones se cargan al inicio y se conservan entre las invocaciones.

  • LAZY: los contenedores solo se cargan cuando se invoca cada función por primera vez. Esos contenedores se conservan para realizar más invocaciones.

Ejemplo

Para ver un ejemplo y un tutorial detallados sobre el uso del subcomando sam local start-lambda, consulte Introducción a las pruebas con sam local start-lambda.