Dela via


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.

Skärmbild av dialogrutan Starta profil med startinställningar för en profil för containeruppskjutning.

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 httpsberoende 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 sslPortskickar 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.

Se även