AppSettings для. NET Базового проекта, не переопределяющего в Docker Контейнер - PullRequest
1 голос
/ 22 января 2020

Настройка приложения для. NET Базового проекта может быть переопределена в Docker Контейнер с помощью переменной Environment. Например,

Appsetting. json

{
    "Logging": {
        "LogLevel": {
            "Default": "Debug"
    }
}

DockerFile (Incase базовой ОС как Ubuntu)

ENV Logging__LogLevel__Default "Warning"

DockerFile (Incase of Base OS as Windows)

ENV Logging:LogLevel:Default "Warning"

Вышеописанная вещь прекрасно работает для всех моих проектов, но внезапно я обнаружил, что конфигурации не переопределяются при использовании Docker Переменные среды определены в файле.

Возможная причина, о которой я могу подумать - Я создал проект ASP. NET Core 3.0 и что-то сломалось в нем.

1 Ответ

1 голос
/ 22 января 2020

Причиной, конечно, была не миграция ядра ASP. NET, но при использовании компоновщика конфигурации произошла ошибка. Необходимо специально указать config.AddEnvironmentVariables (); в Program.cs , чтобы переменные окружения могли перезаписываться файлом dockerfile

Это небольшая причина, но иногда это может сильно ударить, так как невозможно отладить ее в производственной среде, а также отладку довольно сложно в среде docker.

Хороший источник для понимания переменной среды. NET Ядро. Пожалуйста, обратитесь здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...