Устранение неполадок при разработке Visual Studio с помощью Docker

Применимо к: Visual Studio

При работе со средствами контейнеров Visual Studio могут возникнуть проблемы при сборке или отладке приложения. В этой статье описаны некоторые распространенные действия по устранению неполадок.

Общий доступ к корпоративным данным не включен. Включение совместного использования томов в параметрах Docker CE для Windows (только контейнеры Linux)

Общий доступ к файлам должен управляться только в том случае, если вы используете Hyper-V с Docker. Если вы используете WSL 2, следующие действия не являются обязательными, и параметр общего доступа к файлам не будет отображаться. Чтобы устранить эту проблему, выполните следующие действия:

  1. Щелкните правой кнопкой мыши Docker для Windows в области уведомлений и выберите Параметры.

  2. Выберите Ресурсы>Общий доступ к файлам и поделитесь папкой, к которую необходимо получить доступ. Совместное использование всего системного диска возможно, но не рекомендуется.

    Снимок экрана: общие диски.

Совет

Visual Studio выводит запрос, если общие диски не настроены.

Не удается запустить отладку

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

  • del %userprofile%\vsdbg
  • del %userprofile%\onecoremsvsmon

Ошибки, связанные с сетью при отладке приложения

Попробуйте выполнить скрипт, скачанный из раздела Очистка сети узла контейнера, который обновит сетевые компоненты на хост-компьютере.

Отказано в подключении

При использовании Docker для macOS может возникнуть ошибка при ссылке на папку /usr/local/share/dotnet/sdk/NuGetFallbackFolder. Добавьте папку на вкладку Общий доступ к файлам в Docker.

Группа пользователей Docker

При работе с контейнерами в Visual Studio может возникнуть следующая ошибка:

Чтобы использовать Docker Desktop, текущий пользователь должен быть в группе docker-users. Добавьте себя в группу docker-users, а затем выйдите из Windows.

Чтобы иметь разрешения на работу с контейнерами Docker, необходимо быть членом группы docker-users. Чтобы добавить себя в группу в Windows 10 или более поздней версии, выполните следующие действия.

  1. В меню Пуск откройте раздел Управление компьютером.
  2. Разверните узел Локальные пользователи и группы и выберите Группы.
  3. Найдите группу docker-users , щелкните правой кнопкой мыши и выберите Добавить в группу.
  4. Добавьте учетную запись пользователя или учетные записи.
  5. Чтобы эти изменения вступили в силу, выйдите из нее и снова войдите в систему.

Вы также можете использовать net localgroup команду в командной строке администратора, чтобы добавить пользователей в определенные группы.

net localgroup docker-users DOMAIN\username /add

В PowerShell используйте функцию Add-LocalGroupMember .

Мало места на диске

По умолчанию Docker хранит образы в папке %ProgramData%/Docker/ , которая обычно находится на системном диске C:\ProgramData\Docker\. Чтобы изображения не занимали ценное место на системном диске, можно изменить расположение папки образа. Для этого:

  1. Щелкните правой кнопкой мыши значок Docker на панели задач и выберите Параметры.

  2. Выберите Подсистема Docker.

  3. В области редактирования добавьте graph параметр свойства со значением нужного расположения для образов Docker:

       "graph": "D:\\mypath\\images"
    

    Снимок экрана: общий доступ к файлам Docker.

  4. Выберите Применить & Перезапустить. Эти действия изменяют файл конфигурации в папке %ProgramData%\docker\config\daemon.json. Ранее созданные образы не перемещаются.

Несоответствие типов контейнера

При добавлении поддержки Docker в проект вы выбираете контейнер Windows или Linux. Если узел Docker Server не настроен для запуска контейнера того же типа, что и целевой объект проекта, появится сообщение об ошибке следующего вида:

Снимок экрана: несоответствие узла и проекта Docker.

Чтобы устранить эту проблему, щелкните правой кнопкой мыши значок Docker для Windows на панели задач и выберите Переключиться на контейнеры Windows... или Переключиться на контейнеры Linux....

Другие проблемы

Другие проблемы, с которыми вы столкнулись, см. в статье Проблемы с Microsoft/DockerTools .

Ссылки