Настройка инструментов Visual Studio для работы с контейнерами
С помощью параметров Visual Studio можно управлять некоторыми аспектами работы Visual Studio с контейнерами Docker, включая параметры, влияющие на производительность и использование ресурсов при работе с контейнерами Docker.
Параметры инструментов для работы с контейнерами
В главном меню выберите Сервис > Параметры и разверните узлы Инструменты для контейнера > Параметры. Появятся параметры инструментов для контейнера.
Общие параметры инструментов для работы с контейнерами:
Параметры инструментов для работы с контейнерами для отдельного проекта и Docker Compose:
Приведенная ниже таблица может помочь вам настроить эти параметры.
В приведенной ниже таблице описаны общие параметры.
Имя. | Параметр по умолчанию | Применяется к | Description |
---|---|---|---|
При необходимости установите Docker Desktop | Выдавать запрос | Один проект, Docker Compose | Выберите, должен ли выводиться запрос, если средство Docker Desktop не установлено. |
Сделать SSL-сертификат ASP.NET Core доверенным | Выдавать запрос | Проекты ASP.NET Core 2.x | Если ssl-сертификат не является доверенным, localhost Visual Studio будет запрашивать при каждом запуске проекта ASP.NET Core 2.x. |
В приведенной ниже таблице описываются параметры для одного проекта и Docker Compose:
Имя. | Параметр по умолчанию | Применяется к | Description |
---|---|---|---|
Извлекать необходимые образы Docker при открытии проекта | Истина | Один проект, Docker Compose | Для повышения производительности при загрузке проектов Visual Studio будет запускать операцию извлечения Docker в фоновом режиме, чтобы когда код был готов к выполнению, образ уже был скачан или находился в процессе скачивания. Если вы загружаете проекты просто для просмотра кода, можно выбрать значение False, чтобы избежать скачивания ненужных образов контейнеров. |
Извлечение обновленных образов Docker при открытии проекта | Проекты .NET Core | Один проект, Docker Compose | При открытии проекта проверьте наличие обновлений для образов и скачайте их, если они доступны. |
Запускать контейнеры при открытии проекта | Истина | Один проект, Docker Compose | Для повышения производительности Visual Studio создает контейнер заблаговременно, чтобы он был готов к сборке и запуску. Если вы хотите управлять созданием контейнера, выберите значение False. |
Удаление контейнеров при закрытии проекта | Истина | Один проект, Docker Compose | Выберите значение False, если контейнеры решения следует сохранить после закрытия решения или среды Visual Studio. |
Имя. | Параметр по умолчанию | Применяется к | Description |
---|---|---|---|
Извлекать необходимые образы Docker при открытии проекта | Истина | Один проект, Docker Compose | Для повышения производительности при загрузке проектов Visual Studio будет запускать операцию извлечения Docker в фоновом режиме, чтобы когда код был готов к выполнению, образ уже был скачан или находился в процессе скачивания. Если вы загружаете проекты просто для просмотра кода, можно выбрать значение False, чтобы избежать скачивания ненужных образов контейнеров. |
Извлечение обновленных образов Docker при открытии проекта | Проекты .NET Core | Один проект, Docker Compose | При открытии проекта проверьте наличие обновлений для образов и скачайте их, если они доступны. |
Запускать контейнеры при открытии проекта | Истина | Один проект, Docker Compose | Для повышения производительности Visual Studio создает контейнер заблаговременно, чтобы он был готов к сборке и запуску. Если вы хотите управлять созданием контейнера, выберите значение False. |
Удаление контейнеров при закрытии проекта | Истина | Один проект, Docker Compose | Выберите значение False, если контейнеры решения следует сохранить после закрытия решения или среды Visual Studio. |
Запуск службы в контейнерах для включения проверки подлинности Azure | Истина | Один проект, Docker Compose | Visual Studio версии 17.6 или более поздней запускает прокси-службу маркеров в контейнере, который помогает с проверкой подлинности Azure, чтобы приложения могли использовать службы Azure во время разработки. False Установите значение, если вы не хотите, чтобы эта служба была установлена и запущена. |
Запуск службы в контейнерах для включения Горячая перезагрузка | Истина | Один проект, Docker Compose | False Установите значение, если вы не хотите, чтобы эта служба была установлена и запущена. Служба Горячая перезагрузка доступна в Visual Studio 2022 версии 17.7 и более поздних версиях и поддерживает только запуск без отладки (CTRL+F5). |
Параметры окна инструментов "Контейнеры" управляют параметрами, которые применяются к окну инструментов Контейнеры, в котором отображаются сведения о контейнерах и образах Docker. См. Использование окна "Контейнеры"
Параметры окна Контейнеры описаны в представленной ниже таблице.
Имя. | Параметр по умолчанию | Description |
---|---|---|
Подтверждение перед удалением контейнеров | Всегда | Определяет, будет ли выводиться запрос при удалении неиспользуемых контейнеров. |
Подтверждение перед удалением образов | Всегда | Определяет, будет ли выводиться запрос при удалении неиспользуемых образов. |
Подтверждение перед удалением контейнера | Всегда | Определяет, будет ли при удалении контейнера выводиться запрос. |
Подтверждение перед удалением образа | Всегда | Определяет, будет ли при удалении образа выводиться запрос. |
Подтверждение перед запуском большого количества образов | Всегда | Определяет, будет ли выводиться запрос перед запуском контейнеров из более чем 10 образов за раз. |
Предупреждение
localhost
Если SSL-сертификат не является доверенным, и вы выбираете поле для подавления запроса, веб-запросы HTTPS могут завершиться ошибкой во время выполнения в приложении или службе. В этом случае снимите флажок "Не запрашивать проверка", запускать проект и указывать доверие к запросу.
Настройка проверки подлинности Azure
Если приложение использует службы Azure, он должен иметь соответствующие учетные данные проверки подлинности при запуске в контейнере для проверки подлинности с помощью служб Azure. Во время разработки вы обычно можете использовать собственные учетные данные Azure вместо учетных данных, используемых приложением в рабочей среде, но эти учетные данные необходимы в среде контейнера, чтобы быть полезными для работающего контейнерного приложения.
Начиная с Visual Studio 2022 версии 17.6 в проектах с одним контейнером и Docker Compose, служба прокси-сервера токена развертывается и запускается в контейнерах, которые помогают приложениям и службам проходить проверку подлинности в Azure. Для этой функции требуется Azure Identity 1.9.0 или более поздней версии. С помощью этой службы вы можете автоматически использовать большинство служб Azure без дополнительной настройки или установки в контейнере. В частности, код может использовать DefaultAzureCredential
и VisualStudioCredential
проходить проверку подлинности в службах Azure так же, как и за пределами контейнера. См. удостоверений Azure 1.9.0 README.
Чтобы отключить эту функцию, задайте параметр "Параметры инструментов>" запустить службу в контейнерах, чтобы включить проверку подлинности Azure (описанную ранее в этой статье).False
Внимание
Существует потенциальная проблема безопасности, если вы используете прокси-сервер маркера и включили определенные журналы диагностики средств контейнеров. Если ведение журнала включено, учетные данные проверки подлинности могут быть записаны в виде обычного текста. Эти журналы включены определенными переменными среды. Для проектов одного контейнера переменная среды — это MS_VS_CONTAINERS_TOOLS_LOGGING_ENABLED
переменная среды, которая затем входит в %tmp%\Microsoft.VisualStudio.Containers.Tools
систему. Для проектов %tmp%\Microsoft.VisualStudio.DockerCompose.Tools
Docker Compose это MS_VS_DOCKER_TOOLS_LOGGING_ENABLED
значит, что затем выполняет вход.
Связанный контент
Дополнительные сведения о работе с контейнерами в Visual Studio см. в этой обзорной статье.