Я создал основное веб-приложение .net с 3 различными файлами настроек приложения.
- appsettings.json
- appsettings.DEV.json
- appsettings.PROD.json
У меня есть следующий код в файле startup.cs
public Startup(IHostingEnvironment env)
{
var builder = new ConfigurationBuilder()
.SetBasePath(env.ContentRootPath)
.AddJsonFile("appsettings.json", optional: true, reloadOnChange: true)
.AddJsonFile($"appsettings.{env.EnvironmentName}.json", optional: true)
.AddEnvironmentVariables();
configuration = builder.Build();
}
Во время отладки в Visual Studio файл appsettings.js заменяется на основе переменных env (eg: if env=dev -> i got configuration variables from appsettings.DEV.json and if env=prod -> i got configuration variables from appsettings.PROD.json )
Но после докеризации моего приложения это не работает.Для запуска приложения я использовал следующую команду docker.
docker run \
--detach \
--restart always \
--name $name \
--env ASPNETCORE_ENVIRONMENT=$env \
--env containerName=$name \
reponame
Что-нибудь еще нужно для запуска docker?