Paramètres de lancement des Outils du conteneur

Dans le dossier Propriétés d’un projet ASP.NET Core, vous pouvez trouver le launchSettings.json fichier, qui contient des paramètres qui contrôlent la façon dont votre application web est démarrée sur votre ordinateur de développement. Pour plus d’informations sur l’utilisation de ce fichier dans le développement ASP.NET, consultez Utiliser plusieurs environnements dans ASP.NET Core.

Vous pouvez modifier ce fichier directement, mais dans l’IDE Visual Studio, vous pouvez également modifier les propriétés de ce fichier via l’interface utilisateur. Choisissez la liste déroulante en regard de l’option de lancement (par exemple, Docker ou ), puis choisissez Propriétés de débogage.NET SDK.

Dans launchSettings.json, les paramètres de la section Docker sont liés à la façon dont Visual Studio gère les applications conteneurisées.

    "Docker": {
      "commandName": "Docker",
      "launchBrowser": true,
      "launchUrl": "{Scheme}://{ServiceHost}:{ServicePort}",
      "DockerfileRunArguments": "-l mylabel=value",
      "environmentVariables": {
        "ASPNETCORE_URLS": "https://+:443;http://+:80",
        "ASPNETCORE_HTTPS_PORT": "44360"
      },
      "httpPort": 51803,
      "useSSL": true,
      "sslPort": 44360
    }

Le paramètre commandName identifie le fait que cette section s’applique aux Outils du conteneur.

La plupart des paramètres launchSettings.json sont disponibles et applicables, que vous utilisiez un fichier Dockerfile ou que vous utilisiez la prise en charge intégrée du kit sdk .NET (disponible pour .NET 7 et versions ultérieures).

Le tableau suivant montre les propriétés qui peuvent être définies dans cette section :

Nom du paramètre Exemple Description
commandLineArgs "commandLineArgs": "--mysetting myvalue" Ces arguments de ligne de commande pour le démarrage de votre application sont utilisés lors du lancement de votre projet dans le conteneur.
DockerfileRunArguments "dockerfileRunArguments": "-l mylabel=value" Arguments supplémentaires à passer à la docker run commande.
environmentVariables "environmentVariables": {
"ASPNETCORE_URLS": "https://+:443;http://+:80"``, <br/> "ASPNETCORE_HTTPS_PORT": "44381"``
}
Ces valeurs de variables d’environnement sont passées au processus lorsqu’il est lancé dans le conteneur.
httpPort "httpPort": 24051 Ce port sur l’hôte est mappé au port 80 du conteneur lors du lancement du conteneur.
launchBrowser "launchBrowser": true Indique s’il faut lancer le navigateur après le lancement du projet.
launchBrowserTimeout "launchBrowserTimeout": 1 Durée maximale (en secondes) d’attente pour que l’application soit prête avant de lancer le navigateur.
launchUrl "launchUrl": "{Scheme}://{ServiceHost}:{ServicePort}" Cette URL est utilisée lors du lancement du navigateur. Les jetons de remplacement pris en charge pour cette chaîne sont les suivants :

- {Scheme} - Remplacé par l’un ou l’autre http ou https selon que SSL est utilisé.

- {ServiceHost} - Généralement remplacé par localhost.
Toutefois, lorsque vous ciblez des conteneurs Windows sur Windows 10 RS3 ou version antérieure, il est remplacé par l’adresse IP du conteneur.

- {ServicePort} - Généralement remplacé par sslPort ou httpPort, en fonction du SSL utilisé.
Toutefois, lorsque vous ciblez des conteneurs Windows sur Windows 10 RS3 ou version antérieure, il est remplacé par 443 ou 80, selon que SSL est utilisé ou non.
sslPort "sslPort": 44381 Ce port sur l’hôte est mappé au port 443 du conteneur lors du lancement du conteneur.
useSSL "useSSL": true Indique s’il faut utiliser SSL lors du lancement du projet. Si useSSL n’est pas spécifié, SSL est utilisé quand sslPort > 0.

Remarque

Si les mêmes paramètres, par exemple DockerfileRunArguments, se trouvent à la fois dans le fichier projet et dans le fichier de paramètres de lancement, la valeur dans le fichier de paramètres de lancement est prioritaire.

Nom du paramètre Exemple Description
commandLineArgs "commandLineArgs": "--mysetting myvalue" Ces arguments de ligne de commande pour le démarrage de votre application sont utilisés lors du lancement de votre projet dans le conteneur.
containerRunArguments "containerRunArguments": "-l mylabel=value" Comme dockerfileRunArguments, mais pour une utilisation avec le type de build du conteneur du KIT SDK .NET.
DockerfileRunArguments dockerfileRunArguments": "-l mylabel=value" Arguments supplémentaires à passer à la docker run commande.
/
Ce paramètre s’applique uniquement aux projets qui utilisent le type de build du conteneur Dockerfile.

Dans Visual Studio 17.3 et versions ultérieures, vous pouvez utiliser les jetons de remplacement suivants ajoutés :

- {ProjectDir} - Chemin d'accès complet du répertoire du projet.

- {OutDir} - Valeur de la propriété MSBuild OutDir.
environmentVariables "environmentVariables": {
"ASPNETCORE_URLS": "https://+:443;http://+:80",
"ASPNETCORE_HTTPS_PORT": "44381"
}
Ces valeurs de variables d’environnement sont passées au processus lorsqu’il est lancé dans le conteneur.
httpPort "httpPort": 24051 Ce port sur l’hôte est mappé au port 80 du conteneur lors du lancement du conteneur.
launchBrowser "launchBrowser": true Indique s’il faut lancer le navigateur après le lancement du projet.
launchBrowserTimeout "launchBrowserTimeout": 1 Durée maximale (en secondes) d’attente pour que l’application soit prête avant de lancer le navigateur.
launchUrl "launchUrl": "{Scheme}://{ServiceHost}:{ServicePort}" Cette URL est utilisée lors du lancement du navigateur. Les jetons de remplacement pris en charge pour cette chaîne sont les suivants :

- {Scheme} - Remplacé par l’une ou l’autre http ou https, selon que SSL est utilisé.

- {ServiceHost} - Généralement remplacé par localhost.
Toutefois, lorsque vous ciblez des conteneurs Windows sur Windows 10 RS3 ou version antérieure, il est remplacé par l’adresse IP du conteneur.

- {ServicePort} - Généralement remplacé par sslPort ou httpPort, selon que SSL est utilisé ou non.
Toutefois, lorsque vous ciblez des conteneurs Windows sur Windows 10 RS3 ou version antérieure, il est remplacé par 443 ou 80, selon que SSL est utilisé ou non.
publishAllPorts "publishAllPorts": true Si la valeur est « true », passez -P à docker run, ce qui publie tous les ports exposés sur un port aléatoire. Consultez la documentation Docker. Toutefois, lorsque vous spécifiez sslPort, Visual Studio passe quand même -p 5002:443, de sorte que votre service doit toujours être à l’écoute sur le port 5002.
sslPort "sslPort": 44381 Ce port sur l’hôte est mappé au port 443 du conteneur lors du lancement du conteneur.
useSSL "useSSL": true Indique s’il faut utiliser SSL lors du lancement du projet. Si useSSL n’est pas spécifié, SSL est utilisé quand sslPort > 0.

Remarque

Si les mêmes paramètres, par exemple DockerfileRunArguments, se trouvent à la fois dans le fichier projet et dans le fichier de paramètres de lancement, la valeur dans le fichier de paramètres de lancement est prioritaire.

Étapes suivantes

Configurez votre projet en définissant les propriétés de build des Outils du conteneur.

Voir aussi