title | author | description | ms.author | ms.date | ms.technology | ms.topic |
---|---|---|---|---|---|---|
Visual Studio Container Tools launch settings |
ghogen |
Learn about the launch settings for Container Tools that are related to how Visual Studio handles containerized apps. |
ghogen |
08/15/2019 |
vs-container-tools |
reference |
In the Properties folder in an ASP.NET Core project, you can find the launchSettings.json file, which contains settings that control how your web app is started on your development machine. For detailed information on how this file is used in ASP.NET development, see Use multiple environments in ASP.NET Core. In launchSettings.json, the settings in the Docker section are related to how Visual Studio handles containerized apps.
::: moniker range="vs-2017"
"Docker": {
"commandName": "Docker",
"launchBrowser": true,
"launchUrl": "{Scheme}://{ServiceHost}:{ServicePort}"
}
::: moniker-end ::: moniker range=">=vs-2019"
"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
}
::: moniker-end
The commandName setting identifies that this section applies to Container Tools. The following table shows the properties that can be set in this section:
::: moniker range="vs-2017"
Setting name | Version | Example | Description |
---|---|---|---|
launchBrowser | Visual Studio 2017 | "launchBrowser": true | Indicates whether to launch the browser after successfully launching the project. |
launchUrl | Visual Studio 2017 | "launchUrl": "{Scheme}://{ServiceHost}:{ServicePort}" | This URL is used when launching the browser. Supported replacement tokens for this string are: - {Scheme} - Replaced with either "http" or "https" depending on whether SSL is used. - {ServiceHost} - Usually replaced with "localhost". When targeting Windows containers on Windows 10 RS3 or older, though, it is replaced with the container's IP. {ServicePort} - Usually replaced with either sslPort or httpPort, depending on whether SSL is used. When targeting Windows containers on Windows 10 RS3 or older, though, it is replaced with either "443" or "80", depending on whether SSL is used. |
::: moniker-end
::: moniker range="vs-2019"
Setting name | Example | Description |
---|---|---|
commandLineArgs | "commandLineArgs": "--mysetting myvalue" | These command-line arguments for starting your app are used when launching your project in the container. |
DockerfileRunArguments | "dockerfileRunArguments": "-l mylabel=value" | Additional arguments to pass to the docker run command. |
environmentVariables | "environmentVariables": { "ASPNETCORE_URLS": "https://+:443;http://+:80", "ASPNETCORE_HTTPS_PORT": "44381" } |
These environment variable values are passed to the process when it is launched in the container. |
httpPort | "httpPort": 24051 | This port on the host is mapped to the container's port 80 when launching the container. |
launchBrowser | "launchBrowser": true | Indicates whether to launch the browser after successfully launching the project. |
launchBrowserTimeout | "launchBrowserTimeout": 1 | The maximum amount of time (in seconds) to wait for the app to be ready before launching the browser. |
launchUrl | "launchUrl": "{Scheme}://{ServiceHost}:{ServicePort}" | This URL is used when launching the browser. Supported replacement tokens for this string are: - {Scheme} - Replaced with either "http" or "https" depending on whether SSL is used. - {ServiceHost} - Usually replaced with "localhost". When targeting Windows containers on Windows 10 RS3 or older, though, it is replaced with the container's IP. - {ServicePort} - Usually replaced with either sslPort or httpPort, depending on whether SSL is used. When targeting Windows containers on Windows 10 RS3 or older, though, it is replaced with either "443" or "80", depending on whether SSL is used. |
sslPort | "sslPort": 44381 | This port on the host is mapped to the container's port 443 when launching the container. |
useSSL | "useSSL": true | Indicates whether to use SSL when launching the project. If useSSL is not specified, then SSL is used when sslPort > 0. |
Note
If the same settings, for example, DockerfileRunArguments, is found in both the project file and in the launch settings file, the value in the launch settings file takes precedence.
::: moniker-end
::: moniker range=">=vs-2022"
Setting name | Example | Description |
---|---|---|
commandLineArgs | "commandLineArgs": "--mysetting myvalue" | These command-line arguments for starting your app are used when launching your project in the container. |
DockerfileRunArguments | "dockerfileRunArguments": "-l mylabel=value" | Additional arguments to pass to the docker run command. Starting in VS 17.3 Preview 2 support for replacement tokens has been added: - {ProjectDir} - Full path to the project directory. - {OutDir} - The value of the MSBuild property OutDir. |
environmentVariables | "environmentVariables": { "ASPNETCORE_URLS": "https://+:443;http://+:80", "ASPNETCORE_HTTPS_PORT": "44381" } |
These environment variable values are passed to the process when it is launched in the container. |
httpPort | "httpPort": 24051 | This port on the host is mapped to the container's port 80 when launching the container. |
launchBrowser | "launchBrowser": true | Indicates whether to launch the browser after successfully launching the project. |
launchBrowserTimeout | "launchBrowserTimeout": 1 | The maximum amount of time (in seconds) to wait for the app to be ready before launching the browser. |
launchUrl | "launchUrl": "{Scheme}://{ServiceHost}:{ServicePort}" | This URL is used when launching the browser. Supported replacement tokens for this string are: - {Scheme} - Replaced with either "http" or "https" depending on whether SSL is used. - {ServiceHost} - Usually replaced with "localhost". When targeting Windows containers on Windows 10 RS3 or older, though, it is replaced with the container's IP. - {ServicePort} - Usually replaced with either sslPort or httpPort, depending on whether SSL is used. When targeting Windows containers on Windows 10 RS3 or older, though, it is replaced with either "443" or "80", depending on whether SSL is used. |
sslPort | "sslPort": 44381 | This port on the host is mapped to the container's port 443 when launching the container. |
useSSL | "useSSL": true | Indicates whether to use SSL when launching the project. If useSSL is not specified, then SSL is used when sslPort > 0. |
Note
If the same settings, for example, DockerfileRunArguments, is found in both the project file and in the launch settings file, the value in the launch settings file takes precedence.
::: moniker-end
Configure your project by setting the Container Tools build properties.