У меня есть приложение. net core 3.1, которое развернуто на aws ecs в виде docker контейнера. Теперь я хочу указать переменную окружения в моем dockerfile, который я пытаюсь использовать в своем коде, но каждый раз я не получаю никакого значения.
Вот ядро. net:
private IWebHostEnvironment Environment { get; set; }
public IConfiguration Configuration { get; set; }
public void ConfigureServices(IServiceCollection services)
{
var builder = new ConfigurationBuilder()
.AddJsonFile("appsettings.json", optional: false, reloadOnChange: true)
.AddJsonFile($"appsettings.{Environment.EnvironmentName}.json", optional: true)
.AddEnvironmentVariables();
Теперь я хочу заменить environment.EnvironmentName на значение, указанное в Dockerfile, но оно не работает. Также я где-то читал, что я могу указать переменную окружения при выполнении команды docker -run, но в моем случае я не могу этого сделать, потому что aws ecs запускает контейнер docker
Вот docker файл:
FROM mcr.microsoft.com/dotnet/core/sdk:3.1 AS build-env
WORKDIR /app
# Copy everything else and build
COPY . ./
ENV ASPNETCORE_ENVIRONMENT Development
RUN dotnet restore Isofy-Api/*.csproj
RUN dotnet publish Isofy-Api/*.csproj -c Release -o out
# Build runtime image
FROM mcr.microsoft.com/dotnet/core/aspnet:3.1
WORKDIR /app
COPY --from=build-env /app/out .
ENTRYPOINT ["dotnet", "Isofy-Api.dll"]
Что я делаю не так?