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.
-
Pour une introduction au AWS SAM CLI, voir Qu'est-ce que le AWS SAM CLI?
-
Pour obtenir de la documentation sur l'utilisation du AWS SAM CLI
sam local start-api
sous-commande, voirPrésentation des tests avec sam local start-api.
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
. Utiliser0.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-containers
est 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 exemplesam 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