VS2017: добавление переменных среды в Docker-контейнер для отладки - PullRequest
0 голосов
/ 22 октября 2018

Я добавил поддержку докера в свой проект, используя VS2017 (щелкните правой кнопкой мыши проект> Добавить> Поддержка Docker), который создал для меня файл Docker и обновил launchsettings.json.

У меня есть следующий launchsettings.json

"Docker": {
  "commandName": "Docker",
  "launchBrowser": true,
  "launchUrl": "{Scheme}://localhost:{ServicePort}",
  "environmentVariables": {
    "TEST": "Test value"
  }
}

Однако, когда я делаю docker inspect, я не вижу переменную среды в контейнере.

Поскольку у меня нет доступа к файлу docker-compose, каков предлагаемый способвставлять переменные окружения при отладке?

1 Ответ

0 голосов
/ 05 февраля 2019

Я искал тот же ответ и в конце концов нашел этот блог: https://briankeating.net/post/VS2019-Docker-ASPnet-Core-Evnrionment-Variables

Это включает в себя 2 шага:

  1. Создайте новый текстовый файл в вашемпроект, например: Dockerfile.env.Внутри файла вы можете добавить переменную окружения в каждой строке следующим образом: DEMO=VALUE

  2. Отредактируйте файл .csproj вашего проекта и добавьте строку в PropertyGroup, в которой также есть ваш TargetFramework тег с тегом DockerfileRunEnvironmentFiles.

Это будет выглядеть примерно так:

<Project Sdk="Microsoft.NET.Sdk.Web">
    <PropertyGroup>
        <TargetFramework>netcoreapp2.2</TargetFramework>
        <AspNetCoreHostingModel>InProcess</AspNetCoreHostingModel>
        <DockerDefaultTargetOS>Linux</DockerDefaultTargetOS>
        <LangVersion>latest</LangVersion>
        <ApplicationIcon />
        <OutputType>Exe</OutputType>
        <StartupObject />
        <DockerfileRunEnvironmentFiles>Dockerfile.env</DockerfileRunEnvironmentFiles>
    </PropertyGroup>
</Project Sdk="Microsoft.NET.Sdk.Web">

После этого у вас есть переменные среды, определенные в .envфайл доступен во время отладки.

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