Docker под Windows для разработки, разбор подводных камней
Данная публикация является разбором особенностей контейнерной виртуализации Docker под системой Windows.
Она не претендует на роль исчерпывающей и по мере необходимости будет обновляться и дополняться.
За практическим руководством с нуля советую обратиться к этой публикации.
Содержание
Предварительные настройки
Контейнерная виртуализация или виртуализация на уровне операционной системы Docker нативно работает только на дистрибутивах Linux и FreeBSD (экспериментально).
На Windows вам понадобится гостевая Linux система либо специальная минималистичная виртуальная машина с ядром Linux от разработчиков Docker, которая и ставится из коробки.
Само собой разумеется, что вы включили виртуализацию у себя в BIOS/UEFI
Пункт настройки может называться по-разному: VT-x, VT-d, Intel VT, AMD-V, Virtualization Technology.
Еще одним минимальным системным требованием будет разрядность системы x64 и версия не ниже Windows 7 Pro.
Выбор между Docker Toolbox on Windows или Docker for Windows
Сборка включается в себя сам docker, утилиту docker-compose, утилиту для работы с виртуальной машиной docker-machine и клиент Kitematic.
Используется виртуальная машина (по умолчанию на VirtualBox) с минималистичным Linux окружением.
Позже для новых операционных систем выпустили Docker for Windows и Docker for Mac, которая на текущий момент является актуальной версией и продолжает развиваться.
Выбор между версиями не сложный:
— Если у вас Windows 10 x64 Pro, Enterprise или Education то включаем службу Hyper-V и ставим Docker for Windows.
Заметьте, что после включения службы Hyper-V пропадет возможность запускать и создавать x64 виртуальные машины на VirtualBox.
— Если же у вас другая версия Windows(7 Pro, 8, 8.1, 10 Home) то ставим VirtualBox и Docker Toolbox on Windows.
Несмотря на то, что Docker Toolbox разработчиками признан устаревшим работа с ним слабо отличается от Docker for Windows.
Вместе с установкой Docker Toolbox будет создана виртуальная машина.
В самом VirtualBox можно будет добавить оперативной памяти и ядер процессора на ваше усмотрение.
Windows контейнеры и Linux контейнеры
Docker for Windows предоставляет возможность переключать контейнеризацию между Linux и Windows версией.
В режиме Windows контейнеризации вы можете запускать только Windows приложения.
Замечу, что на май 2018 года в официальном Docker Hub существует всего 13 образов для Windows.
После включения Windows контейнеризации не забудьте добавить внешнюю сеть.
В конфигурационном файле docker-compose.yml это выглядит так:
Особенности монтирования папок
На примонтированных volume-ах не кидаются события файловой системы, поэтому inotify-tools не работает.
Спасибо пользователю eee
Если вы разрабатываете свой проект и пользуетесь docker-compose вне домашней папки то вам нужно будет проделать некоторые манипуляции.
Используя Docker for Windows для монтирования нового диска у вашего локального пользователя обязательно должен стоять пароль, который будет использоваться для доступа к shared папки.
Особенность заключается в том, что монтируемые внутрь контейнера диск будет монтироваться как от удаленной машины //10.0.75.1/DISK_DRIVE по протоколу SMB.
Для Docker Toolbox диски монтируются в самом VirtualBox на вкладке «Общие папки»
Пример для диска «D»:
Права доступа к монтируемым файлам и папкам
Как бы вам не хотелось, но для всех примонтированных из хост-машины файлов и папок будут стоять права 755 (rwx r-x r-x) и поменять их вы не сможете.
Остро встает вопрос при монтировании внутрь файла закрытого SSH ключа, права на который должны быть только у владельца(например 600).
В данном случае либо генерируют ключ при создании образа, либо прокидывают сокет ssh-agent с хост-машины.
Монтирование с хост-машины или volume
Монтирование внутрь контейнера происходит с использованием сети и протокола SMB, следовательно, внутри контейнера диск «D:\» будет примонтирован из источника //10.0.75.1/D
Использование volume внутри контейнера отображается как монтирование локального диска /dev/sda1, что влияет на скорость работы.
Простым тестом копирование файла на обычном HDD скорость работы получилась следующая:
Такая разница в скорости скорее всего связана с тем, что в volume данные сбрасываются на диск постепенно, задействуя кеш в ОЗУ.
Особенности разметки диска GPT и MBR
Данный пункт не является истинной так как опровергающей или подтверждающей информации в интернете найти не смог.
Если на хост-машине таблица разделов MBR, то контейнер с MySQL/MariaDB может упасть с ошибкой:
По умолчанию в базе данных включеён параметр innodb_use_native_aio, отвечающий за асинхронный ввод/вывод и его надо будет выключить.
Данная проблема также встречается на некоторых версиях MacOS.
Docker Toobox to Windows
Главное правило: начинать работу с запуска ярлыка на рабочем столе «Docker Quickstart Terminal», это решает 80% проблем.
— Бывает возникают проблемы с отсутствия переменных окружения, решается командой:
— Если все же возникают проблемы из разряда «docker: error during connect», необходимо выполнить:
Название Docker Machine по умолчанию default.
Docker Swarm
Ни в Docker for Mac, ни в Docker for Windows — нет возможности использовать запущенные демоны в качестве клиентов кластера (swarm members).
Спасибо пользователю stychos
Проблемы с кодировкой
Используя Docker Toolbox(на Docker for Windows не удалось воспроизвести) нашлась проблема с тем, что русские комментарии в docker-compose.yml файле приводили к ошибке:
Полезные ссылки
Заключение
Особенности работы с Docker контейнеризацией на системе Windows не отличается от работы на Linux за исключение разобранных выше.
В статье я умышленно не упомянул заметно низкую скорость работы контейнеров и overhead используя систему Windows как само собой разумеющееся.
Буду рад услышать ваши отзывы. Не стесняйтесь предлагать улучшения или указывать на мои ошибки.
Install Docker Desktop on Windows
Estimated reading time: 9 minutes
Update to the Docker Desktop terms
Welcome to Docker Desktop for Windows. This page contains information about Docker Desktop for Windows system requirements, download URL, instructions to install and update Docker Desktop for Windows.
Download Docker Desktop for Windows
System requirements
Your Windows machine must meet the following requirements to successfully install Docker Desktop.
WSL 2 backend
The following hardware prerequisites are required to successfully run WSL 2 on Windows 10 or Windows 11:
Hyper-V backend and Windows containers
Windows 10 64-bit: Pro 2004 (build 19041) or higher, or Enterprise or Education 1909 (build 18363) or higher.
For Windows 10 and Windows 11 Home, see System requirements for WSL 2 backend.
The following hardware prerequisites are required to successfully run Client Hyper-V on Windows 10:
Docker only supports Docker Desktop on Windows for those versions of Windows 10 that are still within Microsoft’s servicing timeline.
Containers and images created with Docker Desktop are shared between all user accounts on machines where it is installed. This is because all Windows accounts use the same VM to build and run containers. Note that it is not possible to share containers and images between user accounts when using the Docker Desktop WSL 2 backend.
Nested virtualization scenarios, such as running Docker Desktop on a VMWare or Parallels instance might work, but there are no guarantees. For more information, see Running Docker Desktop in nested virtualization scenarios.
About Windows containers
Looking for information on using Windows containers?
Install Docker Desktop on Windows
Double-click Docker Desktop Installer.exe to run the installer.
If you haven’t already downloaded the installer ( Docker Desktop Installer.exe ), you can get it from Docker Hub. It typically downloads to your Downloads folder, or you can run it from the recent downloads bar at the bottom of your web browser.
When prompted, ensure the Enable Hyper-V Windows Features or the Install required Windows components for WSL 2 option is selected on the Configuration page.
Follow the instructions on the installation wizard to authorize the installer and proceed with the install.
When the installation is successful, click Close to complete the installation process.
If your admin account is different to your user account, you must add the user to the docker-users group. Run Computer Management as an administrator and navigate to Local Users and Groups > Groups > docker-users. Right-click to add the user to the group. Log out and log back in for the changes to take effect.
Start Docker Desktop
Docker Desktop does not start automatically after installation. To start Docker Desktop:
Search for Docker, and select Docker Desktop in the search results.
The Docker menu (
Here’s a summary of the key changes:
Click the checkbox to indicate that you accept the updated terms and then click Accept to continue. Docker Desktop starts after you accept the terms.
If you do not agree to the updated terms, the Docker Desktop application will close and you can no longer run Docker Desktop on your machine. You can choose to accept the terms at a later date by opening Docker Desktop.
For more information, see Docker Desktop License Agreement. We recommend that you also read the Blog and FAQs to learn how companies using Docker Desktop may be affected.
Quick Start Guide
When the initialization is complete, Docker Desktop launches the Quick Start Guide. This tutorial includes a simple exercise to build an example Docker image, run it as a container, push and save the image to Docker Hub.
To run the Quick Start Guide on demand, right-click the Docker icon in the Notifications area (or System tray) to open the Docker Desktop menu and then select Quick Start Guide.
Congratulations! You are now successfully running Docker Desktop on Windows.
Updates
When an update is available, Docker Desktop displays an icon on the Docker menu to indicate the availability of a newer version. Additionally, the Software Updates section in Preferences (Settings on Windows) also notifies you of any updates available to Docker Desktop. You can choose to download the update right away, or click the Release Notes option to learn what’s included in the updated version.
Starting with Docker Desktop 4.2.0, the option to turn off the automatic check for updates is available for users on all Docker subscriptions, including Docker Personal and Docker Pro. For more information, see Software Updates.
Docker Subscription Service Agreement
Beginning on August 31, 2021, you must agree to the Docker Subscription Service Agreement to continue using Docker Desktop. Read the Blog and the Docker subscription FAQs to learn more about the changes.
Click Download update When you are ready to download the update. This downloads the update in the background. After downloading the update, click Update and restart from the Docker menu. This installs the latest update and restarts Docker Desktop for the changes to take effect.
When Docker Desktop starts, it displays the Docker Subscription Service Agreement window. Read the information presented on the screen to understand how the changes impact you. Click the checkbox to indicate that you accept the updated terms and then click Accept to continue.
If you do not agree to the terms, the Docker Desktop application will close and you can no longer run Docker Desktop on your machine. You can choose to accept the terms at a later date by opening Docker Desktop.
Docker Desktop starts after you accept the terms.
Uninstall Docker Desktop
To uninstall Docker Desktop from your Windows machine:
Uninstalling Docker Desktop destroys Docker containers, images, volumes, and other Docker related data local to the machine, and removes the files generated by the application. Refer to the back up and restore data section to learn how to preserve important data before uninstalling.
Подсистема Docker в Windows
Подсистема и клиент Docker не входят в состав Windows, потому их нужно устанавливать и настраивать отдельно. Кроме того, подсистема Docker может принимать множество пользовательских конфигураций. Например, можно настроить то, как управляющая программа принимает входящие запросы, сетевые параметры по умолчанию и параметры ведения журнала и отладки. В ОС Windows эти конфигурации можно указать в файле конфигурации или с помощью диспетчера служб Windows. В этом документе объясняется установка и настройка подсистемы Docker; также представлены примеры некоторых часто используемых конфигураций.
Установка Docker
Для работы с контейнерами Windows требуется Docker. Docker состоит из подсистемы Docker (dockerd.exe) и клиента Docker (docker.exe). Самый простой способ установить все необходимые компоненты изложен в кратком руководстве, которое поможет настроить и запустить первый контейнер.
Сведения об установке с помощью сценария см. в разделе Использование сценария для установки Docker EE.
Прежде чем использовать Docker, необходимо установить образы контейнеров. Дополнительные сведения см. в документации по образам контейнеров.
Настройка Docker с помощью файла конфигурации
Предпочтительным способом настройки подсистемы Docker в Windows является использование файла конфигурации. Путь к файлу конфигурации — C:\ProgramData\Docker\config\daemon.json. Если этот файл еще не существует, его можно создать.
Не все доступные параметры конфигурации Docker применяются к Docker в Windows. В примере ниже показаны параметры конфигурации, которые применяются. Дополнительные сведения о конфигурации подсистемы Docker см. в статье Docker daemon configuration file (Файл конфигурации управляющей программы Docker).
Достаточно только внести необходимые изменения в файл конфигурации. Например, в этом случае подсистема Docker настраивается на прием входящих подключений через порт 2375. В других параметрах конфигурации будут использоваться значения по умолчанию.
В примере ниже управляющая программа Docker настраивается на прием только защищенных подключений через порт 2376.
Настройка Docker в службе Docker
Распространенные конфигурации
В следующих примерах файла конфигурации представлены распространенные конфигурации Docker. Их можно объединить в один файл конфигурации.
Создание сети по умолчанию
Чтобы настроить подсистему Docker таким образом, чтобы не была создана сеть NAT по умолчанию, используйте следующую конфигурацию.
Дополнительные сведения см. в статье Управление сетями Docker.
Задание группы безопасности для Docker
Конфигурация прокси-сервера
После задания переменной перезапустите службу Docker.
Дополнительные сведения см. в разделе Windows Configuration File (Файл конфигурации Windows) на сайте Docker.com.
Удаление Docker
В этом разделе описывается, как удалить Docker и выполнить полную очистку компонентов системы Docker в Windows 10 или Windows Server 2016.
Все команды в этих инструкциях необходимо выполнять из сеанса PowerShell с повышенными привилегиями.
Подготовка системы к удалению Docker
Перед удалением Docker убедитесь, что в системе не запущены контейнеры.
Выполните следующие командлеты, чтобы найти работающие контейнеры:
Кроме того, перед удалением Docker рекомендуется удалить все контейнеры, образы контейнеров, сети и тома из системы. Это можно сделать, выполнив следующий командлет:
Удаление Docker
Затем необходимо начать собственно удаление Docker.
Удаление Docker в Windows 10
Удаление Docker в Windows Server 2016
В сеансе PowerShell с повышенными привилегиями используйте командлеты Uninstall-Package и Uninstall-Module, чтобы удалить модуль Docker и соответствующий ему поставщик Управление пакетами из системы, как показано в следующем примере:
Очистка данных и системных компонентов Docker
После удаления Docker необходимо удалить сети Docker по умолчанию, чтобы их конфигурация не оставалась в системе после того, как Docker будет удален. Это можно сделать, выполнив следующий командлет:
Удалите сети по умолчанию Docker в Windows Server 2016.
Выполните следующий командлет, чтобы удалить программные данные Docker из системы:
Можно также удалить необязательные компоненты Windows, связанные с Docker и контейнерами в Windows.
К ним относится компонент «Контейнеры», который автоматически включается в любом экземпляре Windows 10 или Windows Server 2016 при установке Docker. Это также может быть компонент «Hyper-V», который автоматически включается в Windows 10 при установке Docker, однако в Windows Server 2016 он включается вручную.
Компонент Hyper-V является общим компонентом виртуализации, который обеспечивает гораздо большую функциональность, чем при использовании одних только контейнеров. Прежде чем отключить Hyper-V, убедитесь, что в системе нет других виртуальных компонентов, которые зависят от Hyper-V.
Удаление компонентов Windows 10
Удаление компонентов Windows Server 2016
В сеансе PowerShell с повышенными привилегиями выполните следующие командлеты, чтобы отключить компоненты Контейнеры и (необязательно) Hyper-V.
Перезагрузка системы
Чтобы завершить удаление компонентов и очистить систему, выполните следующий командлет из сеанса PowerShell с повышенными привилегиями для перезагрузки системы:
Начало работы. Подготовка Windows для контейнеров
Из этого руководства вы узнаете, как выполнить следующие задачи:
Предварительные требования
Windows Server
Для запуска контейнеров на Windows Server вам понадобится физический сервер или виртуальная машина под управлением Windows Server 2022, Windows Server (Semi-Annual Channel), Windows Server 2019 или Windows Server 2016.
Windows 10
Для запуска контейнеров в Windows 10 необходимо следующее:
Начиная с Windows 10 с обновлением за октябрь 2018 г., корпорация Майкрософт не запрещает пользователям запускать контейнер Windows в режиме изоляции процессов в Windows 10 Корпоративная или Профессиональная для разработки и тестирования. Дополнительные сведения см. в разделе вопросов и ответов.
Контейнеры Windows Server по умолчанию используют изоляцию Hyper-V в Windows 10, чтобы разработчики получили ту же версию ядра и ту же конфигурацию, что и в рабочей среде. Дополнительные сведения об изоляции Hyper-V см. в статье Режимы изоляции.
Установка Docker
В конце сентября 2022 г. корпорация Майкрософт объявила об обновлении поддержки среды выполнения контейнеров Windows, чтобы уведомить клиентов о том, что мы больше не будем производить сборки Docker EE для API DockerMsftProvider. Клиентам, которые хотят установить среду выполнения контейнера в экземпляре Windows Server, рекомендуется перейти на containerd, Moby или Mirantis Container Runtime. К сентябрю 2022 года эти документы по установке будут обновлены в соответствии с процессом установки, рекомендуемым корпорацией Майкрософт.
Первым шагом станет установка Docker. Это нужно для работы с контейнерами Windows. Docker предоставляет стандартную среду выполнения для контейнеров, а также популярный API и интерфейс командной строки (CLI).
Дополнительные сведения о конфигурации см. в статье Подсистема Docker в Windows.
Чтобы установить Docker в Windows Server, можно использовать модуль PowerShell поставщика OneGet, который опубликован корпорацией Майкрософт, под именем DockerMicrosoftProvider. Этот поставщик включает поддержку контейнеров в Windows, а также устанавливает подсистему и клиент Docker. Вот как это сделать.
Откройте сеанс PowerShell с повышенными привилегиями и установите поставщик Docker-Microsoft PackageManagement из коллекции PowerShell.
Если будет предложено установить поставщик NuGet, введите Y и установите его.
С помощью модуля PackageManagement PowerShell установите последнюю версию Docker.
После установки перезагрузите компьютер.
Если позже вам потребуется обновить Docker, выполните следующие действия:
Windows Admin Center;
Вы можете использовать Windows Admin Center для корректной настройки компьютера Windows Server в качестве узла контейнера. Чтобы начать работу, убедитесь, что в вашем экземпляре Windows Admin Center установлена последняя версия расширения «Контейнеры». Дополнительные сведения об установке и настройке расширений см. в документации по Windows Admin Center. Установив расширение «Контейнеры», выберите компьютер Windows Server, который нужно настроить, и выберите вариант «Контейнеры»:
Нажмите кнопку Установить. Windows Admin Center запустит настройку Windows Server и Docker в фоновом режиме. После завершения процесса можно обновить страницу и просмотреть другие функции расширения «Контейнеры».
Вы можете установить Docker в Windows 10 Профессиональная и Корпоративная, выполнив описанные ниже действия.
Загрузите и установите Docker Desktop и создайте учетную запись Docker, если у вас ее еще нет. Вы можете создать бесплатную учетную запись Docker для частных пользователей или пользователей малого бизнеса, однако для крупных предприятий взимается ежемесячная плата. Дополнительные сведения см. в документации по Docker.
Во время установки выберите контейнеры Windows в качестве типа контейнеров по умолчанию. Чтобы переключиться после установки, можно использовать элемент Docker в области уведомлений Windows (как показано ниже) либо следующую команду в командной строке PowerShell:
Дальнейшие действия
Теперь, когда ваша среда полностью настроена, перейдите по приведенной ниже ссылке, чтобы узнать, как запустить контейнер.
Начало работы с удаленными контейнерами Docker в WSL 2
это пошаговое руководство поможет приступить к разработке с помощью удаленных контейнеров, настроив для Windows WSL 2 (подсистема Windows для Linux версии 2).
docker Desktop для Windows предоставляет среду разработки для создания, доставки и запуска приложений пакетных. включив модуль на основе WSL 2, вы можете запускать контейнеры Linux и Windows в docker Desktop на одном компьютере. (для личного использования и малых предприятий вы можете использовать docker Desktop. дополнительные сведения о Pro, команде или ценах на веб-узел dockerсм. на странице «вопросы и ответы» для филиалов).
Общие сведения о контейнерах Docker
Docker — это средство для создания, развертывания и запуска приложений с использованием контейнеров. Контейнеры позволяют разработчикам упаковывать приложения с использованием всех необходимых компонентов (библиотек, платформ, зависимостей и т. п.) и поставлять все это как один пакет. Использование контейнера дает возможность приложению работать одинаково, независимо от настроенных параметров или ранее установленных библиотек на компьютере, где оно запускается, так как он может отличаться от компьютера, который использовался для написания и тестирования кода приложения. Это позволяет разработчикам сосредоточиться на написании кода, не беспокоясь о том, в какой системе он будет выполняться.
Контейнеры Docker похожи на виртуальные машины, но не создают всю виртуальную операционную систему. Вместо этого контейнер Docker позволяет приложению использовать то же ядро Linux, что и система, в которой оно работает. Таким образом пакету приложения требуются только те части, которых еще нет на главном компьютере. В результате размер пакета уменьшается, а производительность увеличивается.
Постоянная доступность, которую обеспечивает использование контейнеров Docker с такими инструментами, как Kubernetes, — еще одна причина популярности контейнеров. Это позволяет создавать несколько версий контейнера приложения в разное время. Вместо того чтобы останавливать всю систему для обновления или обслуживания, каждый контейнер (и определенные микрослужбы) можно заменить на лету. Вы можете подготовить новый контейнер со всеми обновлениями, настроить его для рабочей среды и просто указать новый контейнер после его готовности. Можно также архивировать различные версии вашего приложения, используя контейнеры, и при необходимости поддерживать их работу в качестве резервного ресурса.
Дополнительные сведения см. в разделе Введение в контейнеры DOCKER на Microsoft Learn.
Предварительные требования
в WSL версии 1 из-за фундаментальных различий между Windows и Linux подсистема docker не смогла запуститься непосредственно внутри WSL, поэтому группа docker разработала альтернативное решение с использованием виртуальных машин Hyper-V и линукскит. Однако поскольку WSL 2 теперь работает в ядре Linux с полной емкостью системных вызовов, Docker можно полностью запустить в WSL 2. это означает, что контейнеры Linux могут работать изначально без эмуляции, что обеспечивает лучшую производительность и совместимость между средствами Windows и Linux.
Установка Docker Desktop
если серверная часть WSL 2 поддерживается в docker Desktop для Windows, вы можете работать в среде разработки на основе linux и создавать контейнеры на основе linux, используя Visual Studio Code для редактирования кода и отладки и запуска контейнера в Microsoft Edge браузере на Windows.
Чтобы установить DOCKER (после установки WSL), выполните следующие действия.
Скачайте DOCKER Desktop и следуйте инструкциям по установке.
после установки запустите приложение docker Desktop из Windows меню, а затем выберите значок docker в меню «скрытые значки» панели задач. щелкните правой кнопкой мыши значок, чтобы открыть меню команд docker, и выберите «Параметры».
выберите из установленных дистрибутивов WSL 2, для которых вы хотите включить интеграцию с docker, перейдя по: Параметры > ресурсы > WSL integration.
Проверьте, правильно ли работает установка, выполнив простой встроенный образ DOCKER с помощью: docker run hello-world
Вот несколько полезных команд DOCKER для получения сведений:
Разработка в удаленных контейнерах с помощью VS Code
чтобы приступить к разработке приложений с помощью docker с WSL 2, мы рекомендуем использовать VS Code, а также расширение Remote-WSL и расширение docker.
установите VS Code расширение Remote-WSL. это расширение позволяет открыть проект Linux, работающий на WSL, в VS Code (не нужно беспокоиться о проблемах с путями, двоичной совместимости или других задачах, связанных с разными операционными системами).
Установите расширение VS code Remote-Containers. это расширение позволяет открыть папку проекта или репозиторий в контейнере, используя преимущества полного набора функций Visual Studio Code для выполнения разработки в контейнере.
установите VS Code расширение docker. Это расширение добавляет функциональные возможности для создания и развертывания контейнерных приложений, а также управления ими в VS Code. (Для фактического использования контейнера в качестве среды разработки требуется расширение Remote-Container.)
Давайте создадим контейнер разработки для существующего проекта приложения с помощью DOCKER.
В этом примере я использую исходный код из руководства по Hello World Django в среде разработки Python Настройка документов. Этот шаг можно пропустить, если вы предпочитаете использовать собственный исходный код проекта. чтобы скачать веб-приложение HelloWorld-Django из GitHub, откройте терминал WSL (например, Ubuntu) и введите: git clone https://github.com/mattwojo/helloworld-django.git
В терминале WSL измените каталоги на папку исходного кода для этого проекта:
откройте проект в VS Code, работающем на локальном сервере расширений Remote-WSL, введя следующее:
убедитесь, что вы подключены к WSL Linux дистрибутив, проверив зеленый индикатор зеленого цвета в левом нижнем углу экземпляра VS Code.
в VS Code команде паллетте (Ctrl + Shift + P) введите: Remote-containers: Open Folder in контейнер. Если эта команда не отображается при вводе, убедитесь, что вы установили расширение удаленного контейнера, связанное выше.
Выберите папку проекта, которую вы хотите контейнеризовать. В моем случае это \\wsl\Ubuntu-20.04\home\mattwojo\repos\helloworld-django\
Появится список определений контейнеров, так как в папке проекта (репозитории) еще нет конфигурации Девконтаинер. Список отображаемых определений конфигурации контейнера фильтруется на основе типа проекта. Для моего проекта Django я выберу Python 3.
чтобы убедиться, что проект по-прежнему подключен к WSL и в контейнере, откройте VS Code интегрированный терминал (Ctrl + Shift +
в VS Code выберите запустить > отладку запуска (или просто нажмите клавишу F5 ). при этом откроется окно терминала в VS Code. результат должен выглядеть следующим образом: «запуск сервера разработки при http://127.0.0.1:8000/ выходе из системы на сервере с помощью CONTROL-C». Удерживайте нажатой клавишу CTRL и выберите отображаемый адрес, чтобы открыть приложение в веб-браузере по умолчанию и просмотреть проект, работающий в контейнере.
Вы успешно настроили удаленный контейнер разработки с помощью DOCKER Desktop, на базе серверной части WSL 2, который можно использовать для кодирования, сборки, запуска, развертывания или отладки с помощью VS Code!
Устранение неполадок
Нерекомендуемый контекст DOCKER WSL
Возможные ошибки, которые могут возникнуть при работе с этим нерекомендуемым контекстом WSL, включают: docker wsl open //./pipe/docker_wsl: The system cannot find the file specified. или error during connect: Get http://%2F%2F.%2Fpipe%2Fdocker_wsl/v1.40/images/json?all=1: open //./pipe/docker_wsl: The system cannot find the file specified.
Не удается найти папку хранилища образов DOCKER
DOCKER создает две папки дистрибутив для хранения данных:
Дополнительные сведения о поиске расположений хранилищ DOCKER в WSL см. в этой статье из РЕПОЗИТОРИЯ WSL или этой стакковерлов записи.














