Параметры в докере ядра .NET launchSettings.json - PullRequest
0 голосов
/ 21 сентября 2018

Я пишу основное приложение ASP.NET, и у меня есть файл launchSettings.json со следующим содержимым:

{
  "iisSettings": {
    "windowsAuthentication": false,
    "anonymousAuthentication": true,
    "iisExpress": {
      "applicationUrl": "http://localhost:50251",
      "sslPort": 44349
    }
  },
  "profiles": {
    "IIS Express": {
      "commandName": "IISExpress",
      "launchBrowser": true,
      "environmentVariables": {
        "ASPNETCORE_ENVIRONMENT": "Development"
      }
    },
    "AspNetDockerDemo": {
      "commandName": "Project",
      "launchBrowser": true,
      "environmentVariables": {
        "ASPNETCORE_ENVIRONMENT": "Development"
      },
      "applicationUrl": "https://localhost:5001;http://localhost:5000"
    },
    "Docker": {
      "commandName": "Docker",
      "launchBrowser": true,
      "launchUrl": "{Scheme}://{ServiceHost}"
    }
  }
}

Вопрос: Где заменяются заполнители { }и где определяются значения, на которые они подставляются?Что мне делать, если я хочу определить такие значения самостоятельно?

Ответы [ 2 ]

0 голосов
/ 19 июня 2019

Поскольку вы используете Docker-интеграцию Visual Studio, вы, очевидно, заметили, что он случайным образом выбирает сопоставления портов для вас.

Один из способов изменить это - щелкнуть правой кнопкой мыши по основному приложению asp.net и выбрать Add -> Container Orchestration Support.Это попытается восстановить ваши файлы Dockerfile и .dockerignore, что вы можете отказаться делать, если вы внесли существенные изменения в существующие файлы (примечание: если у вас есть, это может вызвать другие проблемы со следующими инструкциями).Он также сгенерирует некоторые настройки docker-compose для вас в виде нескольких файлов yaml.

В моем случае меня заинтересовал файл docker-compose.override.yml, добавленный в проект.Из коробки это выглядит примерно так:

version: '3.4'

services:
  coreapp:
    environment:
      - ASPNETCORE_ENVIRONMENT=Development
    ports:
      - "80"

Бит ports: = "80" - это то, что нас интересует.Измените его на "<your desired port>:80", чтобы указать используемый порт:

version: '3.4'

services:
  coreapp:
    environment:
      - ASPNETCORE_ENVIRONMENT=Development
    ports:
      - "8080:80"
0 голосов
/ 04 октября 2018

Создайте файл .env и назначьте Scheme и ServiceHost.

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