Как переопределить тома отладчика Visual Studio Container Tools в docker -compose.vs.debug.g.yml? - PullRequest
1 голос
/ 11 февраля 2020

Мое приложение - ASP. NET приложение WCF, работающее в. NET Framework 4.8. Я использую Docker для Windows, Visual Studio 2019 и Container Tools с последними обновлениями.

Приложение работает в образе wcf: 4.8 windows и из Dockerfile я копирую свой исходники в новый каталог, такой как 'c: \ inetpub \ myapp'.

FROM mcr.microsoft.com/dotnet/framework/wcf:4.8-windowsservercore-ltsc2019
ARG source
WORKDIR /inetpub/myapp
COPY ${source:-obj/Docker/publish} .

Я использовал PowerShell для создания пула приложений, учетных записей служб, редактирования привязок и т. Д. c. при необходимости и функции приложения, Debugs, et c. по желанию. Тем не менее, мой исходный каталог все еще также смонтирован на c:\inetpub\wwwroot независимо от того, что я делаю в файле compose.

Это то, что генерируется в глобальном compose. Мое пользовательское расположение тома просто слито с этим, и до сих пор я не видел .dcproj параметр сборки или переменную среды, которая изменит это поведение:

version: '3.4'

services:
  appserver:
    image: appserver:dev
    container_name: AppServer
    build:
      args:
        source: obj/Docker/empty/
      labels:
        com.microsoft.created-by: "visual-studio"
        com.microsoft.visual-studio.project-name: "AppServer"
    volumes:

Я хочу эта строка исчезла:

      - C:\Source\MyAppSourceDir:C:\inetpub\wwwroot 
      - C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\IDE\Remote Debugger:C:\remote_debugger:ro
    entrypoint: cmd /c "start /B C:\\ServiceMonitor.exe w3svc & C:\\remote_debugger\\x64\\msvsmon.exe /noauth /anyuser /silent /nostatus /noclrwarn /nosecuritywarn /nofirewallwarn /nowowwarn /timeout:2147483646"
...