Nastavení spuštění nástroje kontejneru
Ve složce Vlastnosti v projektu ASP.NET Core najdete launchSettings.json
soubor, který obsahuje nastavení, která řídí, jak je webová aplikace spuštěná na vývojovém počítači. Podrobné informace o tom, jak se tento soubor používá při vývoji ASP.NET, najdete v tématu Použití více prostředí v ASP.NET Core.
Tento soubor můžete upravit přímo, ale v integrovaném vývojovém prostředí sady Visual Studio můžete také upravit vlastnosti v tomto souboru prostřednictvím uživatelského rozhraní. Zvolte rozevírací seznam vedle možnosti spuštění (například Docker
nebo .NET SDK
) a pak zvolte Vlastnosti ladění pro projekt s jedním kontejnerem.
V případě Docker Compose zvolte Spravovat nastavení spuštění Docker Compose a viz Spuštění podmnožina služeb pro psaní zpráv.
V launchSettings.json souvisí nastavení v části Dockeru s tím, jak Visual Studio zpracovává kontejnerizované aplikace.
"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
}
Nastavení commandName identifikuje, že tato část se vztahuje na nástroje kontejneru.
Většina nastavení je launchSettings.json
dostupná a použitelná bez ohledu na to, jestli používáte soubor Dockerfile nebo používáte integrovanou podporu sestavení kontejneru sady .NET SDK (k dispozici pro .NET 7 a novější).
Následující tabulka uvádí vlastnosti, které lze nastavit v této části:
Název nastavení | Příklad | Popis |
---|---|---|
commandLineArgs | "commandLineArgs": "--mysetting myvalue" |
Tyto argumenty příkazového řádku pro spuštění aplikace se použijí při spuštění projektu v kontejneru. |
DockerfileRunArguments | "dockerfileRunArguments": "-l mylabel=value" |
Další argumenty pro předání docker run příkazu. |
environmentVariables | "environmentVariables": { "ASPNETCORE_URLS": "https://+:443;http://+:80"``, <br/> "ASPNETCORE_HTTPS_PORT": "44381"'' } |
Tyto hodnoty proměnných prostředí se předávají procesu při spuštění v kontejneru. |
httpPort | "httpPort": 24051 |
Tento port na hostiteli se při spuštění kontejneru mapuje na port 80 kontejneru. |
launchBrowser | "launchBrowser": true |
Určuje, jestli se má po úspěšném spuštění projektu spustit prohlížeč. |
launchBrowserTimeout | "launchBrowserTimeout": 1 |
Maximální doba (v sekundách), po kterou bude aplikace připravená, než se spustí prohlížeč. |
launchUrl | "launchUrl": "{Scheme}://{ServiceHost}:{ServicePort}" |
Tato adresa URL se používá při spuštění prohlížeče. Podporované náhradní tokeny pro tento řetězec jsou: - {Scheme} - Nahrazeno buď buď http nebo https v závislosti na tom, zda se používá SSL. - {ServiceHost} - Obvykle nahrazeno .localhost Pokud ale cílíte na kontejnery Windows ve Windows 10 RS3 nebo starší, nahradí se IP adresou kontejneru. - {ServicePort} - Obvykle se nahrazuje buď sslPort nebo httpPort , v závislosti na tom, zda se používá SSL. Pokud ale cílíte na kontejnery Windows ve Windows 10 RS3 nebo starší, nahradí 443 se buď nebo 80 , v závislosti na tom, jestli se používá SSL. |
sslPort | "sslPort": 44381 |
Tento port na hostiteli se při spuštění kontejneru mapuje na port 443 kontejneru. |
useSSL | "useSSL": true |
Určuje, jestli se má při spuštění projektu používat PROTOKOL SSL. Pokud useSSL není zadáno, použije se protokol SSL, pokud sslPort > 0 . |
Poznámka:
Pokud se například DockerfileRunArguments
stejné nastavení nachází v souboru projektu i v souboru nastavení spuštění, má přednost hodnota v souboru nastavení spuštění.
Vlastnost v uživatelském rozhraní profilu ladění | Název nastavení v launchSettings.json | Příklad | Popis |
---|---|---|---|
Command line arguments | commandLineArgs | "commandLineArgs": "--mysetting myvalue" |
Tyto argumenty příkazového řádku pro spuštění aplikace se použijí při spuštění projektu v kontejneru. |
Argumenty spuštění kontejneru | containerRunArguments ContainerRunArguments |
"containerRunArguments": "-l mylabel=value" |
Další argumenty pro předání docker run příkazu. (V sadě Visual Studio 17.12 a novější použijte malá písmena. Verze velká písmena byla zavedena v sadě Visual Studio 17.9 a je k dispozici pro zpětnou kompatibilitu.) Můžete použít následující náhradní tokeny: - {ProjectDir} - Úplná cesta k adresáři projektu. - {OutDir} - Hodnota vlastnosti MSBuild OutDir. |
– | DockerfileRunArguments | dockerfileRunArguments": "-l mylabel=value" |
Podobně jako containerRunArguments u projektů, které používají typ sestavení Dockerfile. Pro Visual Studio 17.12 a novější se doporučuje místo toho použít containerRunArguments . |
Proměnné prostředí | environmentVariables | "environmentVariables": {"ASPNETCORE_URLS": "https://+:443;http://+:80" , "ASPNETCORE_HTTPS_PORT": "44381" } |
Tyto hodnoty proměnných prostředí se předávají procesu při spuštění v kontejneru. |
Název kontejneru | containerName | mycontainer |
(17.12 a novější) Název kontejneru odpovídající regulárnímu výrazu [a-zA-Z0-9][a-zA-Z0-9_.-] . |
Soubory prostředí kontejneru | containerRunEnvironmentFiles | "containerRunEnvironmentFiles": "abc.env;xyz.env" |
(17.12 a novější) Seznam souborů proměnných prostředí (.env souborů) oddělených středníky. Viz syntaxe souboru .env. |
Http Port | httpPort | "httpPort": 24051 |
Tento port na hostiteli se při spuštění kontejneru mapuje na port 80 kontejneru. |
Spustit prohlížeč | launchBrowser | "launchBrowser": true |
Určuje, jestli se má po úspěšném spuštění projektu spustit prohlížeč. |
– | launchBrowserTimeout | "launchBrowserTimeout": 1 |
Maximální doba (v sekundách), po kterou bude aplikace připravená, než se spustí prohlížeč (jenom Docker Compose). |
URL | launchUrl | "launchUrl": "{Scheme}://{ServiceHost}:{ServicePort}" |
Tato adresa URL se používá při spuštění prohlížeče. Podporované náhradní tokeny pro tento řetězec jsou: - {Scheme} - Nahrazeno buď http nebo https , v závislosti na tom, zda se používá SSL. - {ServiceHost} - Obvykle nahrazeno .localhost Pokud ale cílíte na kontejnery Windows ve Windows 10 RS3 nebo starší, nahradí se IP adresou kontejneru. - {ServicePort} - Obvykle se nahrazuje sslPort nebo httpPort v závislosti na tom, jestli se používá SSL. Pokud ale cílíte na kontejnery Windows ve Windows 10 RS3 nebo starší, nahradí 443 se buď nebo 80 , v závislosti na tom, jestli se používá SSL. |
Publikování všech portů | publishAllPorts | "publishAllPorts": true |
Pokud je pravda, předejte -P do docker run souboru , který publikuje všechny vystavené porty do náhodného portu. Viz dokumentace k Dockeru. Pokud však zadáte sslPort , Visual Studio stále předává -p 5002:443 , takže vaše služba by měla stále naslouchat na portu 5002. |
Ssl Port | sslPort | "sslPort": 44381 |
Tento port na hostiteli se při spuštění kontejneru mapuje na port 443 kontejneru. |
– | useSSL | "useSSL": true |
Určuje, jestli se má při spuštění projektu používat PROTOKOL SSL. Pokud useSSL není zadáno, použije se protokol SSL, pokud sslPort > 0 . |
V uživatelském rozhraní nejsou k dispozici všechna nastavení, useSSL
například . Pokud chcete tato nastavení změnit, upravte launchSettings.json
je přímo.
Toto nastavení DockerfileRunArguments
je v sadě Visual Studio 2022 17.12 a novějších verzích containerRunArguments
, které lze nastavit v uživatelském rozhraní profilů spuštění jako Container run arguments
.
Poznámka:
Pokud se stejné nastavení nachází v souboru projektu i v souboru nastavení spuštění, má přednost hodnota v souboru nastavení spuštění.
Další kroky
Nakonfigurujte projekt nastavením vlastností sestavení Nástroje kontejneru.