Startinställningar för containerverktyg
I mappen Egenskaper i ett ASP.NET Core-projekt hittar du filen launchSettings.json
som innehåller inställningar som styr hur webbappen startas på utvecklingsdatorn. Detaljerad information om hur den här filen används i ASP.NET utveckling finns i Använda flera miljöer i ASP.NET Core.
Du kan redigera den här filen direkt, men i Visual Studio IDE kan du också redigera egenskaperna i den här filen via användargränssnittet. Välj listrutan bredvid startalternativet (till exempel Docker
eller .NET SDK
) och välj sedan Felsöka egenskaper för ett projekt med en container.
För Docker Compose väljer du Hantera Startinställningar för Docker Composeoch läser Starta en delmängd av compose-tjänster.
I launchSettings.jsonär inställningarna i avsnittet Docker relaterade till hur Visual Studio hanterar containerbaserade appar.
"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
}
Inställningen commandName identifierar att det här avsnittet gäller för containerverktyg.
De flesta inställningarna i launchSettings.json
är tillgängliga och tillämpliga oavsett om du använder en Dockerfile eller använder .NET SDK:s inbyggda stöd för containerbygge (tillgängligt för .NET 7 och senare).
Följande tabell visar de egenskaper som kan anges i det här avsnittet:
Inställningsnamn | Exempel | Beskrivning |
---|---|---|
commandLineArgs | "commandLineArgs": "--mysetting myvalue" |
Dessa kommandoradsargument för att starta din app används när du startar projektet i containern. |
DockerfileRunArguments | "dockerfileRunArguments": "-l mylabel=value" |
Ytterligare argument som ska skickas till kommandot docker run . |
environmentVariables |
"environmentVariables":
{
"ASPNETCORE_URLS": "https://+:443;http://+:80"``, <br/> "ASPNETCORE_HTTPS_PORT": "44381"' } |
Dessa miljövariabelvärden skickas till processen när den startas i containern. |
httpPort | "httpPort": 24051 |
Den här porten på värden mappas till containerns port 80 när containern startas. |
launchBrowser | "launchBrowser": true |
Anger om du vill starta webbläsaren efter att projektet har startats. |
launchBrowserTimeout | "launchBrowserTimeout": 1 |
Den maximala tiden (i sekunder) för att vänta tills appen är klar innan webbläsaren startas. |
launchUrl | "launchUrl": "{Scheme}://{ServiceHost}:{ServicePort}" |
Den här URL:en används när webbläsaren startas. Ersättningstoken som stöds för den här strängen är: - {Scheme} – Ersätts med antingen http eller https beroende på om SSL används. - {ServiceHost} – ersätts vanligtvis med localhost . När du riktar in dig på Windows-containrar på Windows 10 RS3 eller äldre ersätts det dock med containerns IP-adress. - {ServicePort} – ersätts vanligtvis med antingen sslPort eller httpPort , beroende på om SSL används. När du riktar in dig på Windows-containrar på Windows 10 RS3 eller äldre ersätts det dock med antingen 443 eller 80 , beroende på om SSL används. |
sslPort | "sslPort": 44381 |
Den här porten på värden mappas till containerns port 443 när containern startas. |
useSSL | "useSSL": true |
Anger om du vill använda SSL när projektet startas. Om useSSL inte anges används SSL när sslPort > 0 . |
Not
Om samma inställningar, till exempel DockerfileRunArguments
, finns i både projektfilen och i startinställningsfilen har värdet i startinställningsfilen företräde.
Egenskap i användargränssnittet för felsökningsprofil | Ange namn i launchSettings.json | Exempel | Beskrivning |
---|---|---|---|
Kommandoradsargument | commandLineArgs | "commandLineArgs": "--mysetting myvalue" |
Dessa kommandoradsargument för att starta din app används när du startar projektet i containern. |
Argument för containerkörning | containerRunArguments ContainerRunArguments |
"containerRunArguments": "-l mylabel=value" |
Ytterligare argument som ska skickas till kommandot docker run . (Använd den gemena versionen i Visual Studio 17.12 och senare. Den versala versionen introducerades i Visual Studio 17.9 och tillhandahålls för bakåtkompatibilitet.) Du kan använda följande ersättningstoken: - {ProjectDir} – Fullständig sökväg till projektkatalogen. - {OutDir} – värdet för MSBuild-egenskapen OutDir. |
Ej tillämpligt | DockerfileRunArguments | dockerfileRunArguments": "-l mylabel=value" |
Som containerRunArguments , men bara för projekt som använder Dockerfile-byggtypen. För Visual Studio 17.12 och senare rekommenderar vi att du använder containerRunArguments i stället. |
Miljövariabler | environmentVariables |
"environmentVariables": {"ASPNETCORE_URLS": "https://+:443;http://+:80" , "ASPNETCORE_HTTPS_PORT": "44381" } |
Dessa miljövariabelvärden skickas till processen när den startas i containern. |
Containernamn | containerName | mycontainer |
(17.12 och senare) Ett namn på containern som matchar det reguljära uttrycket [a-zA-Z0-9][a-zA-Z0-9_.-] . |
Containermiljöfiler | containerRunEnvironmentFiles | "containerRunEnvironmentFiles": "abc.env;xyz.env" |
(17.12 och senare) En lista över miljövariabelfiler (.env filer) avgränsade med semikolon. Se .env-filsyntax. |
HTTP-port | httpPort | "httpPort": 24051 |
Den här porten på värden mappas till containerns port 80 när containern startas. |
Starta webbläsare | launchBrowser | "launchBrowser": true |
Anger om du vill starta webbläsaren efter att projektet har startats. |
Ej tillämpligt | launchBrowserTimeout | "launchBrowserTimeout": 1 |
Den maximala tiden (i sekunder) för att vänta tills appen är klar innan webbläsaren startas (endast Docker Compose). |
URL | launchUrl | "launchUrl": "{Scheme}://{ServiceHost}:{ServicePort}" |
Den här URL:en används när webbläsaren startas. Ersättningstoken som stöds för den här strängen är: - {Scheme} – Ersätts med antingen http eller https beroende på om SSL används. - {ServiceHost} – ersätts vanligtvis med localhost . När du riktar in dig på Windows-containrar på Windows 10 RS3 eller äldre ersätts det dock med containerns IP-adress. - {ServicePort} – ersätts vanligtvis med antingen sslPort eller httpPort, beroende på om SSL används. När du riktar in dig på Windows-containrar på Windows 10 RS3 eller äldre ersätts det dock med antingen 443 eller 80 , beroende på om SSL används. |
Publicera alla portar | publishAllPorts | "publishAllPorts": true |
Om det är sant skickar du -P till docker run , som publicerar alla exponerade portar till en slumpmässig port. Se Docker-dokumentationen. Men när du anger sslPort skickar Visual Studio fortfarande -p 5002:443 , så tjänsten bör fortfarande lyssna på port 5002. |
SSL-port | sslPort | "sslPort": 44381 |
Den här porten på värden mappas till containerns port 443 när containern startas. |
Ej tillämpligt | useSSL | "useSSL": true |
Anger om du vill använda SSL när projektet startas. Om useSSL inte anges används SSL när sslPort > 0 . |
Alla inställningar är inte tillgängliga i användargränssnittet, till exempel useSSL
. Om du vill ändra inställningarna redigerar du launchSettings.json
direkt.
Inställningen DockerfileRunArguments
ersätts i Visual Studio 2022 17.12 och senare av containerRunArguments
, som kan anges i användargränssnittet för startprofiler som Container run arguments
.
Not
Om samma inställning finns både i projektfilen och i startinställningsfilen har värdet i startinställningsfilen företräde.
Nästa steg
Konfigurera projektet genom att ange Container Tools-byggegenskaperna.