sam local start-api - AWS Serverless Application Model

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

sam local start-api

Cette page fournit des informations de référence pour l'interface de ligne de AWS Serverless Application Model commande (AWS SAM CLI) sam local start-api sous-commande.

La sam local start-api sous-commande exécute vos AWS Lambda fonctions localement pour les tester via un HTTP serveur hôte local.

Utilisation

$ sam local start-api <options>

Options

--add-host LIST

Transmet un mappage de nom d'hôte à adresse IP au fichier hôte du conteneur Docker. Ce paramètre peut être transmis plusieurs fois.

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

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

Autorisez ou refusez les fonctionnalités bêta.

--config-env TEXT

Le nom d’environnement spécifiant les valeurs de paramètre par défaut dans le fichier de configuration à utiliser. La valeur par défaut est « par défaut ». Pour plus d'informations sur les fichiers de configuration, consultez AWS SAM CLI Fichier de configuration  .

--config-file PATH

Le chemin d'accès et le nom du fichier de configuration contenant les valeurs de paramètres par défaut à utiliser. La valeur par défaut est « samconfig.toml » dans la racine du répertoire du projet. Pour plus d'informations sur les fichiers de configuration, consultez AWS SAM CLI Fichier de configuration  .

--container-env-vars

Facultatif. Transmettez les variables d’environnement au conteneur d’images lors du débogage local.

--container-host TEXT

Hôte du conteneur Lambda émulé localement. La valeur par défaut est localhost. Si tu veux courir AWS SAM CLI dans un conteneur Docker sous macOS, vous pouvez spécifierhost.docker.internal. Si vous souhaitez exécuter le conteneur sur un hôte différent de AWS SAM CLI, vous pouvez spécifier l'adresse IP de l'hôte distant.

--container-host-interface TEXT

L’adresse IP de l’interface de réseau hôte à laquelle les ports de conteneur doivent se relier. La valeur par défaut est 127.0.0.1. Utiliser 0.0.0.0 pour se lier à toutes les interfaces.

--debug

Active la journalisation du débogage pour imprimer le message de débogage généré par AWS SAM CLI et affiche les horodatages.

--debug-args TEXT

Arguments facultatifs à transmettre au débogueur.

--debug-function

Facultatif. Spécifie la fonction Lambda pour appliquer les options de débogage lorsque --warm-containersest spécifié. Ce paramètre s’applique à --debug-port, --debugger-path et --debug-args.

--debug-port, -d TEXT

Lorsque spécifié, démarre le conteneur de fonction Lambda en mode débogage et expose ce port sur l'hôte local.

--debugger-path TEXT

Le chemin d’accès de l’hôte vers un débogueur qui sera monté dans le conteneur Lambda.

--docker-network TEXT

Nom ou identifiant d’un réseau Docker existant auquel les conteneurs Docker Lambda devraient se connecter, avec le réseau de pont par défaut. Si cela n’est pas spécifié, les conteneurs Lambda se connectent uniquement au réseau Docker de pont par défaut.

--docker-volume-basedir, -v TEXT

Emplacement du répertoire de base où se trouve le AWS SAM fichier. Si Docker est exécuté sur une machine distante, vous devez monter le chemin où se trouve le AWS SAM fichier sur la machine Docker et modifier cette valeur pour qu'elle corresponde à la machine distante.

--env-vars, -n PATH

JSONFichier contenant les valeurs des variables d'environnement de la fonction Lambda.

--force-image-build

Spécifie si AWS SAM CLI devrait reconstruire l'image utilisée pour appeler des fonctions avec des couches.

--help

Affiche ce message, puis se ferme.

--hook-name TEXT

Le nom du hook utilisé pour étendre AWS SAM CLI fonctionnalité.

Valeurs acceptées : terraform.

--host TEXT

Le nom d’hôte local ou adresse IP à relier (par défaut : '127.0.0.1').

--invoke-image TEXT

L'image URI du conteneur que vous souhaitez utiliser pour vos fonctions Lambda. Par défaut, AWS SAM extrait l'image du conteneur depuis Amazon ECR Public. Utilisez cette option pour extraire l’image à partir d’un autre emplacement.

Vous pouvez spécifier cette option plusieurs fois. Chaque instance de cette option peut prendre une chaîne ou une paire valeur clé. Si vous spécifiez une chaîne, il s'agit URI de l'image du conteneur à utiliser pour toutes les fonctions de votre application. Par exemple, sam local start-api --invoke-image public.ecr.aws/sam/emu-python3.8. Si vous spécifiez une paire clé-valeur, la clé est le nom de la ressource et la valeur est celle URI de l'image du conteneur à utiliser pour cette ressource. Par exemple sam local start-api --invoke-image public.ecr.aws/sam/emu-python3.8 --invoke-image Function1=amazon/aws-sam-cli-emulation-image-python3.8 . Avec les paires valeur clé, vous pouvez spécifier différentes images de conteneur pour différentes ressources.

--layer-cache-basedir DIRECTORY

Spécifie l’emplacement basedir dans lequel les couches utilisées par le modèle sont téléchargées.

--log-file, -l TEXT

Le fichier journal vers lequel envoyer les journaux d’exécution.

--parameter-overrides

Chaîne contenant des remplacements de AWS CloudFormation paramètres codés sous forme de paires clé-valeur. Utilisez le même format que le AWS Command Line Interface (AWS CLI). Le AWS SAM CLI le format correspond à des mots clés et valeurs explicites, chaque remplacement étant séparé par un espace. Voici deux exemples :

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

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

--port, -p INTEGER

Le numéro de port local à écouter (par défaut : '3000').

--profile TEXT

Le profil spécifique de votre fichier d'informations d'identification qui obtient les AWS informations d'identification.

--region TEXT

AWS Région dans laquelle le déploiement doit être effectué. Par exemple, us-east-1.

--save-params

Enregistrez les paramètres que vous fournissez sur la ligne de commande dans le fichier AWS SAM de configuration.

--shutdown

Imite un événement d’arrêt une fois l’appel terminé, afin de tester la gestion des extensions du comportement d’arrêt.

--skip-prepare-infra

Ignore l'étape de préparation si aucune modification d'infrastructure n'a été apportée. À utiliser avec l'option --hook-name.

--skip-pull-image

Spécifie s'il CLI faut ignorer l'extraction de la dernière image Docker vers le bas pour le runtime Lambda.

--ssl-cert-file PATH

Chemin d'accès au fichier de SSL certificat (par défaut : aucun). Lorsque vous utilisez cette option, elle doit également être utilisée. --ssl-key-file

--ssl-key-file PATH

Chemin d'accès au fichier SSL clé (par défaut : aucun). Lorsque vous utilisez cette option, elle doit également être utilisée. --ssl-cert-file

--static-dir, -s TEXT

Tous les fichiers d'actifs statiques (par exempleCSS/JavaScript/HTML) situés dans ce répertoire sont présentés à l'adresse/.

--template, -t PATH

Le fichier AWS SAM modèle.

Note

Si vous spécifiez cette option, AWS SAM charge uniquement le modèle et les ressources locales vers lesquels il pointe.

--terraform-plan-file

Le chemin relatif ou absolu vers votre local Terraform fichier de plan lors de l'utilisation du AWS SAM CLI avec Terraform Cloud. Cette option nécessite qu'elle --hook-name soit définie surterraform.

--warm-containers [EAGER | LAZY]

Facultatif. Spécifie comment AWS SAM CLI gère les conteneurs pour chaque fonction.

Deux options sont disponibles :

   EAGER : Les conteneurs pour toutes les fonctions sont chargés au démarrage et persistent entre les appels.

   LAZY : Les conteneurs ne sont chargés que lorsque chaque fonction est appelée pour la première fois. Ces conteneurs persistent pour des appels supplémentaires.

Exemple

L'exemple suivant démarre un serveur local, vous permettant de tester votre application viaAPI. Pour que cette commande fonctionne, l'application doit être installée et Docker doit être en cours d'exécution.

$ sam local start-api --port 3000