Starteinstellungen für Containertools

Im Ordner "Eigenschaften" in einem ASP.NET Core-Projekt finden Sie die launchSettings.json Datei, die Einstellungen enthält, die steuern, wie Ihre Web-App auf Ihrem Entwicklungscomputer gestartet wird. Ausführliche Informationen dazu, wie diese Datei in der ASP.NET-Entwicklung verwendet wird, finden Sie unter Verwenden von mehreren Umgebungen in ASP.NET Core.

Sie können diese Datei direkt bearbeiten, aber in Visual Studio IDE können Sie die Eigenschaften in dieser Datei auch über die Benutzeroberfläche bearbeiten. Wählen Sie die Dropdownliste neben der Startoption (zDocker. B. oder .NET SDK) und dann "Debugeigenschaften" aus.

In launchSettings.json beziehen sich die Einstellungen im Abschnitt Docker darauf, wie Visual Studio containerisierte Apps behandelt.

    "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
    }

Die Einstellung „commandName“ gibt an, dass dieser Abschnitt für Container Tools gilt.

Die meisten Einstellungen launchSettings.json sind verfügbar und anwendbar, unabhängig davon, ob Sie eine Dockerfile verwenden oder die integrierte Unterstützung des .NET-Containerbuilds (verfügbar für .NET 7 und höher) verwenden.

In der folgenden Tabelle sind die Eigenschaften aufgeführt, die in diesem Abschnitt festgelegt werden können:

Einstellungsname Beispiel Beschreibung
commandLineArgs "commandLineArgs": "--mysetting myvalue" Diese Befehlszeilenargumente zum Starten Ihrer App werden verwendet, wenn Sie das Projekt im Container starten.
DockerfileRunArguments "dockerfileRunArguments": "-l mylabel=value" Zusätzliche Argumente, die an den docker run Befehl übergeben werden sollen.
EnvironmentVariables "environmentVariables": {
"ASPNETCORE_URLS": "https://+:443;http://+:80"``, <br/> "ASPNETCORE_HTTPS_PORT": "44381"``
}
Diese Umgebungsvariablenwerte werden beim Starten im Container an den Prozess übermittelt.
httpPort "httpPort": 24051 Dieser Port auf dem Host wird dem Port 80 des Containers zugeordnet, wenn der Container gestartet wird.
launchBrowser "launchBrowser": true Gibt an, ob der Browser nach dem erfolgreichen Starten des Projekts gestartet werden soll.
launchBrowserTimeout "launchBrowserTimeout": 1 Die maximale Wartezeit (in Sekunden), bis die App bereit ist, bevor der Browser gestartet wird.
launchUrl "launchUrl": "{Scheme}://{ServiceHost}:{ServicePort}" Diese URL wird beim Start des Browsers verwendet. Für diese Zeichenfolge werden folgende Ersetzungstoken unterstützt:

- {Scheme} - Ersetzt durch entweder http oder https abhängig davon, ob SSL verwendet wird.

- {ServiceHost} - In der Regel ersetzt durch localhost.
Wenn Sie Windows-Container unter Windows 10 RS3 oder älter als Ziel verwenden, wird der Wert jedoch durch die IP-Adresse des Containers ersetzt.

- {ServicePort} – Wird entweder durch sslPort oder httpPort ersetzt, je nachdem, ob SSL verwendet wird.
Wenn Sie Windows-Container unter Windows 10 RS3 oder älter als Ziel verwendet werden, wird sie jedoch durch 443 oder 80 ersetzt, je nachdem, ob SSL verwendet wird.
sslPort "sslPort": 44381 Dieser Port auf dem Host wird dem Port 443 des Containers zugeordnet, wenn der Container gestartet wird.
useSSL "useSSL": true Gibt an, ob beim Starten des Projekts SSL verwendet werden soll. Wenn useSSL nicht angegeben ist, wird SSL verwendet, wenn sslPort > 0 verwendet wird.

Hinweis

Wenn die gleichen Einstellungen, z. B. DockerfileRunArguments, sowohl in der Projektdatei als auch in der Starteinstellungsdatei gefunden werden, hat der Wert in der Starteinstellungsdatei Vorrang.

Einstellungsname Beispiel Beschreibung
commandLineArgs "commandLineArgs": "--mysetting myvalue" Diese Befehlszeilenargumente zum Starten Ihrer App werden verwendet, wenn Sie das Projekt im Container starten.
containerRunArguments "containerRunArguments": "-l mylabel=value" Wie dockerfileRunArguments, aber für die Verwendung mit dem .NET SDK-Containerbuildtyp.
DockerfileRunArguments dockerfileRunArguments": "-l mylabel=value" Zusätzliche Argumente, die an den docker run Befehl übergeben werden sollen.
/
Diese Einstellung gilt nur für Projekte, die den Dockerfile-Containerbuildtyp verwenden.

In Visual Studio 17.3 und höher können Sie die folgenden hinzugefügten Ersatztoken verwenden:

- {ProjectDir} – Vollständiger Pfad zum Projektverzeichnis.

- {OutDir} – Der Wert der MSBuild-Eigenschaft OutDir.
environmentVariables "environmentVariables": {
"ASPNETCORE_URLS": "https://+:443;http://+:80",
"ASPNETCORE_HTTPS_PORT": "44381"
}
Diese Umgebungsvariablenwerte werden beim Starten im Container an den Prozess übermittelt.
httpPort "httpPort": 24051 Dieser Port auf dem Host wird dem Port 80 des Containers zugeordnet, wenn der Container gestartet wird.
launchBrowser "launchBrowser": true Gibt an, ob der Browser nach dem erfolgreichen Starten des Projekts gestartet werden soll.
launchBrowserTimeout "launchBrowserTimeout": 1 Die maximale Wartezeit (in Sekunden), bis die App bereit ist, bevor der Browser gestartet wird.
launchUrl "launchUrl": "{Scheme}://{ServiceHost}:{ServicePort}" Diese URL wird beim Start des Browsers verwendet. Für diese Zeichenfolge werden folgende Ersetzungstoken unterstützt:

- {Scheme} - Ersetzt durch entweder http oder https, je nachdem, ob SSL verwendet wird.

- {ServiceHost} - In der Regel ersetzt durch localhost.
Wenn Sie Windows-Container unter Windows 10 RS3 oder älter als Ziel verwenden, wird der Wert jedoch durch die IP-Adresse des Containers ersetzt.

- {ServicePort} – Wird normalerweise entweder durch sslPort oder httpPort ersetzt, je nachdem, ob SSL verwendet wird.
Wenn Sie Windows-Container unter Windows 10 RS3 oder älter als Ziel verwendet werden, wird sie jedoch durch 443 oder 80 ersetzt, je nachdem, ob SSL verwendet wird.
publishAllPorts "publishAllPorts": true Wenn „true“ gilt, übergeben Sie -P an docker run, wodurch alle verfügbaren Ports an einen zufälligen Port veröffentlicht werden. Weitere Informationen finden Sie in der Docker-Dokumentation. Wenn Sie jedoch sslPort angeben, übergibt Visual Studio weiterhin -p 5002:443, Ihr Dienst sollte deshalb weiterhin an Port 5002 lauschen.
sslPort "sslPort": 44381 Dieser Port auf dem Host wird dem Port 443 des Containers zugeordnet, wenn der Container gestartet wird.
useSSL "useSSL": true Gibt an, ob beim Starten des Projekts SSL verwendet werden soll. Wenn useSSL nicht angegeben ist, wird SSL verwendet, wenn sslPort > 0 verwendet wird.

Hinweis

Wenn die gleichen Einstellungen, z. B. DockerfileRunArguments, sowohl in der Projektdatei als auch in der Starteinstellungsdatei gefunden werden, hat der Wert in der Starteinstellungsdatei Vorrang.

Nächste Schritte

Konfigurieren Sie Ihr Projekt, indem Sie die Buildeigenschaften für Containertools festlegen.

Siehe auch