- Install Docker Desktop on Windows
- System requirements
- WSL 2 backend
- Hyper-V backend and Windows containers
- What’s included in the installer
- About Windows containers
- Install Docker Desktop on Windows
- Start Docker Desktop
- Automatic updates
- Uninstall Docker Desktop
- Установка Docker на Windows 10 Home
- Обеспечение предварительных условий
- Установить ядро Linux
- Управление реестром Windows
- Установите Docker в Windows 10 Home
- Как установить Docker на Windows 10 Home
- Как это устроено
- Начальная настройка
- Настройка двигателя докера
- Настройка инструментов Docker
- Подсистема Windows для Linux 2
- Переход на Linux
- Резюме
Install Docker Desktop on Windows
Estimated reading time: 6 minutes
Welcome to Docker Desktop for Windows. This page contains information about Docker Desktop for Windows system requirements, download URL, installation instructions, and automatic updates.
By downloading Docker Desktop, you agree to the terms of the Docker Software End User License Agreement and the Docker Data Processing Agreement.
System requirements
Your Windows machine must meet the following requirements to successfully install Docker Desktop.
WSL 2 backend
- Windows 10 64-bit: Home, Pro, Enterprise, or Education, version 1903 (Build 18362 or higher).
- Enable the WSL 2 feature on Windows. For detailed instructions, refer to the Microsoft documentation.
The following hardware prerequisites are required to successfully run WSL 2 on Windows 10:
- 64-bit processor with Second Level Address Translation (SLAT)
- 4GB system RAM
- BIOS-level hardware virtualization support must be enabled in the BIOS settings. For more information, see Virtualization.
Hyper-V backend and Windows containers
Windows 10 64-bit: Pro, Enterprise, or Education (Build 17134 or higher).
The following hardware prerequisites are required to successfully run Client Hyper-V on Windows 10:
- 64 bit processor with Second Level Address Translation (SLAT)
- 4GB system RAM
- BIOS-level hardware virtualization support must be enabled in the BIOS settings. For more information, see Virtualization.
Docker supports Docker Desktop on Windows for those versions of Windows 10 that are still within Microsoft’s servicing timeline.
What’s included in the installer
The Docker Desktop installation includes Docker Engine, Docker CLI client, Docker Compose, Notary, Kubernetes, and Credential Helper.
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?
- Switch between Windows and Linux containers describes how you can toggle between Linux and Windows containers in Docker Desktop and points you to the tutorial mentioned above.
- Getting Started with Windows Containers (Lab) provides a tutorial on how to set up and run Windows containers on Windows 10, Windows Server 2016 and Windows Server 2019. It shows you how to use a MusicStore application with Windows containers.
- Docker Container Platform for Windows articles and blog posts on the Docker website.
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.
When the whale icon in the status bar stays steady, Docker Desktop is up-and-running, and is accessible from any terminal window.
If the whale icon is hidden in the Notifications area, click the up arrow on the taskbar to show it. To learn more, see Docker Settings.
When the initialization is complete, Docker Desktop launches the onboarding tutorial. The tutorial includes a simple exercise to build an example Docker image, run it as a container, push and save the image to Docker Hub.
Congratulations! You are now successfully running Docker Desktop on Windows.
If you would like to rerun the tutorial, go to the Docker Desktop menu and select Learn.
Automatic updates
Starting with Docker Desktop 3.0.0, updates to Docker Desktop will be available automatically as delta updates from the previous version.
When an update is available, Docker Desktop displays an icon to indicate the availability of a newer version. Whenever convenient, you can start the download of the update in the background.
When the download finishes, all you need to do is to click Update and restart from the Docker menu. This installs the latest update and restarts Docker Desktop for the changes to take effect.
Uninstall Docker Desktop
To uninstall Docker Desktop from your Windows machine:
- From the Windows Start menu, select Settings >Apps >Apps & features.
- Select Docker Desktop from the Apps & features list and then select Uninstall.
- Click Uninstall to confirm your selection.
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 10 Home
Docker — это инструмент, используемый разработчиками для компиляции программного обеспечения с использованием виртуализации на уровне операционной системы. Docker имеет контейнерную инфраструктуру, то есть каждый контейнер изолирован от другого, но все контейнеры доставляются как единый продукт.
Первоначально Docker был представлен для платформы Linux. Но теперь, при наличии нескольких предварительных условий, теперь его можно запускать в выпусках Windows 10 Professional, Enterprise и Education. По умолчанию выпуск Windows 10 Home не поддерживался Docker. Давайте продолжим смотреть, как мы можем включить Docker для домашней версии.
Обеспечение предварительных условий
Во-первых, мы должны убедиться, что выполнены все предварительные условия, чтобы установка Docker прошла гладко и без перебоев.
- Системные требования:
64-разрядная версия Windows 10 Home edition 2004 или выше
Не менее 4 ГБ ОЗУ - Установите Hyper-V на Windows 10 Home.
- Включите Hyper-V и функцию контейнера Windows, нажав клавишу Windows и R, затем введите OptionalFeatures. Убедитесь, что функции отмечены, нажмите OK, чтобы внести изменения.
- Включите виртуализацию в настройках BIOS.
Установить ядро Linux
Для начала нам потребуется обновить ядро Linux WSL2. Это важно, так как от этого зависит связь между Docker и оборудованием компьютера. Вы можете скачать обновленный пакет для ядра WSL2 Linux здесь.
Когда загрузка будет завершена, запустите ее, дважды щелкнув ее, а затем нажмите Далее, чтобы начать установку. Эта установка обычно занимает меньше минуты. По завершении нажмите Готово, чтобы закрыть мастер установки.
Управление реестром Windows
- Откройте редактор реестра, одновременно нажав клавиши Windows и R, чтобы открыть команду «Выполнить». Введите Regedit и нажмите Enter.
- Перейдите в следующее место в редакторе реестра:
HKEY_Local_Machine -> Software -> Microsoft -> Windows NT -> CurrentVersion - После щелчка CurrentVersion, щелкните правой кнопкой мыши издание ID в правом окне и нажмите кнопку Изменить.
- В разделе «Данные значения» замените CoreN на ProfessionalN.
Установите Docker в Windows 10 Home
Затем мы переходим к самому Docker. Загрузите установочный пакет для Windows 10 Домашняя здесь.
После завершения загрузки запустите его, дважды щелкнув по нему. Должен появиться экран, как показано ниже:
Убедитесь, что установлен флажок Включить компоненты WSL 2 Windows. Щелкните OK, чтобы начать установку. Этот шаг обычно занимает около 5 минут, так как отображается экран, показанный ниже:
После завершения установки нажмите «Закрыть» и «Перезагрузить», чтобы закрыть мастер установки и перезагрузить компьютер. После перезагрузки компьютера Docker должен запуститься, и должны появиться следующие окна:
После завершения установки мы можем вернуться к манипуляциям с реестром, выполненным ранее во время процесса, и преобразовать ProfessionalN обратно в CoreN.
Если вы разработчик и хотите протестировать свои приложения, Docker — ваш выбор. Установите Docker на свой компьютер с Windows 10 Home и наслаждайтесь тестированием.
Как установить Docker на Windows 10 Home
Если вы когда-нибудь пытались установить Docker для Windows , вы, вероятно, поняли, что программа установки не будет работать в Windows 10 Home. Только Windows Pro, Enterprise или Education поддерживают Docker. Обновление лицензии Windows является дорогостоящим, а также бессмысленным, поскольку вы по-прежнему можете запускать контейнеры Linux в Windows, не полагаясь на технологию Hyper-V , что является обязательным требованием для Docker для Windows.
Если вы планируете запускать контейнеры Windows , вам потребуется определенная версия и сборка Windows Server. Проверьте матрицу совместимости версии контейнера Windows для деталей.
В 99,999% случаев вам нужен только контейнер Linux, поскольку он поддерживает программное обеспечение, созданное с использованием технологий с открытым исходным кодом и .NET. Кроме того, контейнеры Linux могут работать в любом дистрибутиве и на популярных архитектурах ЦП, включая x86_64 , ARM и IBM .
В этом уроке я покажу вам, как быстро настроить виртуальную машину Linux в Windows Home с Docker Engine с помощью Docker Machine . Вот список программного обеспечения, которое вам понадобится для создания и запуска контейнеров Docker:
- Docker Machine : инструмент CLI для установки Docker Engine на виртуальных хостах
- Docker Engine : работает поверх ядра Linux; используется для сборки и запуска контейнеров
- Docker Client : инструмент CLI для выдачи команд в Docker Engine через REST API
- Docker Compose : инструмент для определения и запуска мультиконтейнерных приложений
Я покажу, как выполнить установку в следующих средах:
- В Windows с помощью Git Bash
- В подсистеме Windows для Linux 2 (работает под управлением Ubuntu 18.04)
Во-первых, позвольте мне объяснить, как установка Docker будет работать в Windows.
Как это устроено
Как вы, вероятно, знаете, Docker требует ядро Linux для запуска Linux Containers. Чтобы это работало в Windows, вам нужно настроить виртуальную машину Linux для работы в качестве гостя в Windows 10 Home.
Настройка виртуальной машины Linux может быть выполнена вручную. Самый простой способ — использовать Docker Machine, чтобы выполнить эту работу за вас, выполнив одну команду. Эта виртуальная машина Docker Linux может работать как в вашей локальной системе, так и на удаленном сервере. Docker клиент будет использовать SSH для связи с Docker Engine. Всякий раз, когда вы создаете и запускаете образы, фактический процесс будет происходить внутри виртуальной машины, а не на вашем хосте (Windows).
Давайте углубимся в следующий раздел, чтобы настроить среду, необходимую для установки Docker.
Начальная настройка
Вы можете иметь или не иметь следующие приложения, установленные в вашей системе. Я предполагаю, что нет. Если вы это сделаете, не забудьте обновить до последних версий. Я также предполагаю, что вы используете последнюю стабильную версию Windows. На момент написания статьи я использовал Windows 10 Home version 1903. Давайте начнем устанавливать следующее:
Установите Git Bash для Windows . Это будет наш основной терминал для запуска команд Docker.
Установите Chocolatey , менеджер пакетов для Windows. Это облегчит работу по установке остальных программ.
Установите VirtualBox и его расширение. В качестве альтернативы, если вы закончили установку Chocolatey, вы можете просто выполнить эту команду внутри терминала PowerShell с повышенными правами:
Если вы хотите попробовать запустить Docker в среде WSL2, вам нужно сначала настроить WSL2. Вы можете следовать этому руководству для пошаговых инструкций.
Настройка двигателя докера
Установка Docker Engine довольно проста. Сначала нам нужно установить Docker Machine.
Установите Docker Machine, следуя инструкциям на этой странице . Кроме того, вы можете выполнить эту команду внутри терминала PowerShell с повышенными правами:
Используя терминал Git Bash, используйте Docker Machine для установки Docker Engine. Это загрузит образ Linux, содержащий Docker Engine, и запустит его как виртуальную машину с использованием VirtualBox. Просто выполните следующую команду:
Далее нам нужно настроить, какие порты открываются при запуске контейнеров Docker. Это позволит нам получить доступ к нашим приложениям через localhost . Не стесняйтесь добавлять столько, сколько хотите. Для этого вам нужно запустить Oracle VM VirtualBox из меню «Пуск». Выберите виртуальную машину по умолчанию в боковом меню. Затем нажмите Настройки > Сеть > Адаптер 1 > Переадресация портов . Вы должны найти порт пересылки ssh уже настроенный для вас. Вы можете добавить еще так:
Далее нам нужно разрешить Docker монтировать тома, расположенные на вашем жестком диске. По умолчанию вы можете монтировать только из каталога C://Users/ . Чтобы добавить другой путь, просто перейдите в Oracle VM VirtualBox GUI. Выберите виртуальную машину по умолчанию и перейдите в « Настройки» > « Общие папки» . Добавьте новый, нажав на символ плюса. Введите поля, как это. Если есть опция с именем Постоянная , включите ее.
Чтобы избавиться от ошибки неверных настроек, как показано на скриншоте выше, просто увеличьте объем видеопамяти на вкладке «Дисплей» в параметре настроек. Видеопамять в этом случае не важна, так как мы будем запускать виртуальную машину в режиме без головы.
Чтобы запустить виртуальную машину Linux, просто выполните эту команду в Git Bash. Виртуальная машина Linux запустится. Дайте время для завершения процесса загрузки. Это не должно занять больше минуты. Вам нужно будет делать это каждый раз при загрузке вашей хост-ОС:
Далее нам нужно настроить переменные окружения Docker. Это позволяет клиенту Docker и Docker Compose взаимодействовать с модулем Docker, работающим на виртуальной машине Linux, по default . Вы можете сделать это, выполнив команды в Git Bash:
Вам нужно будет устанавливать переменные окружения каждый раз, когда вы запускаете новый терминал Git Bash. Если вы хотите избежать этого, вы можете скопировать вывод eval и сохранить его в своем файле .bashrc . Это должно выглядеть примерно так:
ВАЖНО : для DOCKER_CERT_PATH вам нужно изменить путь к файлу Linux на формат пути Windows. Также обратите внимание, что есть вероятность, что назначенный IP-адрес может отличаться от того, который вы сохраняли при каждом запуске виртуальной машины по default .
В следующем разделе мы установим Docker Client и Docker Compose.
Настройка инструментов Docker
Для этого раздела вам необходимо установить следующие инструменты, используя PowerShell в режиме администратора. Эти инструменты упакованы в установщик Docker для Windows. Поскольку установщик отказывается работать в Windows 10 Home, мы установим эти программы по отдельности, используя Chocolatey:
После завершения процесса установки вы можете переключиться обратно на терминал Git Bash. Вы можете продолжать использовать PowerShell, но я предпочитаю синтаксис Linux для выполнения команд. Давайте выполним следующие команды, чтобы убедиться, что Docker работает:
Если все вышеперечисленные команды выполняются успешно, это означает, что вы успешно установили Docker. Если вы хотите попробовать более амбициозный пример, у меня есть небольшое приложение Node.js, которое я настроил для запуска на контейнерах Docker. Во-первых, вам нужно установить GNU Make, используя PowerShell с правами администратора:
Далее выполните следующие команды. Запуск этого примера Node.js обеспечит отсутствие проблем с открытыми портами и томами монтирования в файловой системе Windows. Сначала перейдите к папке, которую вы уже смонтировали в настройках VirtualBox. Далее выполните следующие команды:
Когда вы нажмете последнюю команду, вы должны ожидать похожий вывод:
Получение вышеуказанного вывода означает, что монтаж тома прошел успешно. Откройте localhost:1234 чтобы подтвердить, что веб-сайт доступен. Это подтвердит, что вы правильно настроили порты. Вы можете редактировать исходный код, например, изменить заголовок h1 в App.jsx . Как только вы сохраните файл, страница браузера автоматически обновится. Это означает, что горячая перезагрузка модуля выполняется из контейнера Docker.
Я хотел бы обратить ваше внимание на docker-compose.yml файл docker-compose.yml . Для перезагрузки горячего модуля для работы из Docker Container в Windows требуется следующее:
При использовании пакета укажите порт HMR в стартовом скрипте package.json :
parcel src / index.html –hmr-port 1235
В правилах переадресации портов виртуальной машины убедитесь, что эти порты доступны хост-системе:
inotify не работает на файловых vboxsf , поэтому изменения файла не могут быть обнаружены. Обходной путь должен установить опрос для Chokidar через переменные окружения в docker-compose.yml . Вот полный файл, чтобы вы могли увидеть, как он установлен:
Теперь, когда у нас есть полностью рабочая реализация Docker на Windows 10 home, давайте настроим ее на WSL2 для тех, кто заинтересован.
Подсистема Windows для Linux 2
Установка Docker на WSL2 не так проста, как кажется. К сожалению, последняя версия Docker Engine не может работать на WSL2. Однако есть более старая версия, docker-ce=17.09.0
ubuntu , которая хорошо работает в WSL2. Я не буду освещать это здесь. Вместо этого я покажу вам, как получить доступ к Docker Engine, работающему на виртуальной машине, которую мы настроили ранее, с терминала WSL.
Все, что нам нужно сделать, это установить Docker клиент и Docker compose. Предполагая, что вы используете WSL2 Ubuntu Terminal, выполните следующее:
Установите Docker, используя официальные инструкции:
Установите Docker Compose, используя это официальное руководство . Альтернативой является использование PIP, который просто установит последнюю стабильную версию:
Исправьте проблему монтирования Docker в терминале WSL, вставив этот контент в /etc/wsl.conf . Создайте файл, если он не существует:
Вам нужно будет перезагрузить компьютер, чтобы этот параметр вступил в силу.
Предполагая, что Linux Docker VM работает, вам необходимо подключить к ней инструменты Docker в среде WSL. Если вы можете получить доступ к docker-machine из терминала Ubuntu, выполните команду eval . В противном случае вы можете вставить следующую переменную Docker в ваш файл .bashrc . Вот мой пример:
Вам нужно будет перезапустить свой терминал или выполнить source
/.bashrc чтобы настройки вступили в силу. Выполнение команд Docker должно работать правильно в WSL без помех.
Переход на Linux
Теперь мы подходим к концу этой статьи. Действия по настройке Docker в Windows 10 — это довольно длительный процесс. Если вы планируете переформатировать свою машину, вам придется снова пройти тот же процесс. Хуже, если ваша задача — установить Docker на несколько компьютеров под управлением Windows 10 Home.
Более простое решение — перейти на Linux для разработки. Вы можете создать раздел и настроить двойную загрузку. Вы также можете использовать VirtualBox для установки и запуска полного дистрибутива Linux внутри Windows. Проверьте, какой популярный дистрибутив вы бы хотели попробовать. Я использую Linux Lite, потому что он легкий и основан на Ubuntu. С VirtualBox вы можете попробовать столько дистрибутивов, сколько пожелаете.
Если вы используете дистрибутив на основе Ubuntu, вы можете легко установить Docker с помощью следующих команд:
Вам нужно будет выйти, а затем войти, чтобы последняя команда вступила в силу. После этого вы можете запустить любую команду Docker без проблем. Вам не нужно беспокоиться о проблемах с монтированием или портами. Docker Engine работает как служба в Linux, которая по умолчанию запускается автоматически. Нет необходимости в подготовке виртуальной машины Docker. Все работает из коробки, не полагаясь на взломать.
Резюме
Я надеюсь, что вы установили и запустили Docker в Windows 10 Home. Я полагаю, что этот метод должен работать на более старых версиях, таких как Windows 7. В случае, если у вас возникнут проблемы, просто следуйте инструкциям, чтобы увидеть, если вы что-то пропустили. Заметьте, однако, что я не охватил все функции Docker. Вы можете столкнуться с ошибкой или неподдерживаемой функцией, которая требует обходного пути, или может вообще не иметь решения. Если это так, я бы порекомендовал вам просто переключиться на Linux, если вы хотите более плавной разработки с использованием Docker.