- Как установить и использовать Docker на Windows
- Установка
- Использование
- Docker для каждого
- Установка Docker на Windows
- Что нужно знать перед установкой Docker на Windows?
- Установка Docker на Windows 10
- Установить Docker на Windows 10 WSL2
- Установка WSL2 на Windows 10
- Установка Docker на Windows 10
- Как установить Docker на Windows 10 Home
- Как это устроено
- Начальная настройка
- Настройка двигателя докера
- Настройка инструментов Docker
- Подсистема Windows для Linux 2
- Переход на Linux
- Резюме
Как установить и использовать Docker на Windows
Oct 16, 2017 · 2 min read
Сегодня контейнеры являются одной из самых популярных технологий на рынке. Если у вас нет машины на Linux, вот инструкции по использованию Docker toolbox, чтобы установить Docker на Windows.
Итак, вы хотите начать пользоваться Docker, но не очень хотите вместе с этим еще и учиться пользоваться Linux. Я крайне рекомендую пользоваться Docker на Linux, но, наверное, у вас есть причина, по которой вы выбрали Windows. К вашему счастью, Docker создал инструмент, который делает использование их ПО довольно простым на Windows.
Это ПО называется Doc k er Toolbox. Эта программа устанавливает все необходимые компоненты, позволяющие работать с Docker на Windows. И сразу предупреждаю: нет, Docker не перенесли свою платформу на Windows. Docker устанавливает VirtualBox, Boot2docker и специальный терминал быстрого доступа (запускает ВМ Boot2docker). Docker Toolbox сильно облегчает запуск Docker на машине под Windows.
Давайте разберем процесс установки и использования данного инструмента.
Установка
Простота Docker toolbox заметна сразу с начала процесса установки. Поскольку это Windows, то вся установка это — скачать файл и сделать несколько кликов мышкой. Скачайте файл и нажмите на него, чтобы запустить мастер установки.
В мастере установки ничего необычного нет. Он состоит из следующих шагов:
- Куда установить Docker toolbox
- Какие компоненты установить (рис. 1)
- Выбор дополнительных компонентов (создание ярлыка на рабочем столе, обновить Boot2Docker VM и др.)
- Начать установку
Во время установки вас попросят разрешить установку device software. Это нужно для того, чтобы Oracel VirtualBox могу получить доступ к подсистему USB. Как только, установка device software будет закончена, мастер установки завершит процесс.
Использование
На рабочем столе должны появиться 3 иконки:
- Docker quickstart terminal
- Oracle VM VirtualBox
- Kitematic
Для запуска Docker Toolbox надо 2 раза нажать на Docker Quickstart Terminal. После запуска произойдет автоматическая проверка версии Boot2docker, запустятся необходимые компоненты и можно начать пользоваться Docker.
Теперь можно делать с Docker все то, что можно делать на машине с Linux. Пулить образы, разворачивать контейнеры, разрабатывать с контейнерами, и все это на машине с Windows.
Docker для каждого
Docker Toolbox доступен абсолютно бесплатно для Windows и Mac. Даже если у вас нет достаточно умений, чтобы запустить Linux сервер, вы все равно можете пользоваться всеми возможностями Docker.
Установка Docker на Windows
Обновл. 13 Апр 2021 |
Docker Desktop для Windows — это нативное Windows-приложение, которое предоставляет среду для сборки и запуска контейнеризированных приложений. В его основе лежат нативная Hyper-V виртуализация и сеть, что является наиболее быстрым и стабильным вариантом для работы с Docker в Windows. Docker Desktop для Windows поддерживает как Windows-, так и Linux-контейнеры.
Что нужно знать перед установкой Docker на Windows?
Нам потребуется операционная система Windows 10 версии Корпоративная, Профессиональная или Образовательная. Также должны быть подключены компоненты Hyper-V и Windows Containers. Для работы с этими компонентами система должна выполнять следующие требования:
64-разрядный процессор с поддержкой преобразования адресов второго уровня (сокр. «SLAT» от англ. «Second Level Address Translation»).
Не менее 4 ГБ оперативной памяти.
Поддержка аппаратной виртуализации на уровне BIOS.
Есть два способа проверить, включена ли у вас виртуализация на уровне BIOS.
Способ №1: Посмотреть в «Диспетчер задач» > «Производительность» в поле «Виртуализация» должно быть значение «Включено» :
Способ №2: Воспользоваться утилитой systeminfo . Для этого нужно открыть приложение Windows Powershell или Командную строку с правами администратора ( Win+R ) и запустить команду systeminfo . Нас интересует последний пункт — «Требования Hyper-V» , где значением каждого подпункта должно быть «Да» :
Наличие технологии Microsoft Hyper-V является обязательным условием для установки Docker в Windows. Инсталлятор Docker для Windows предложит вам включить нужные компоненты и перезагрузить вашу машину.
Примечание: Если у вас на компьютере было установлено бесплатное ПО виртуализации VirtualBox, то после включения компонента Hyper-V VirtualBox перестанет работать, при этом все образы ваших виртуальных машин будут сохранены.
Docker для Windows включает в себя следующие компоненты:
Docker CLI клиент
Контейнеры и образы, созданные с помощью Docker Desktop для Windows, доступны всем пользователям машины, на которую он установлен, так как все пользователи используют одну и ту же виртуальную машину для сборки и запуска контейнеров.
Установка Docker на Windows 10
Существует два варианта установки Docker на Windows:
Приложение «Docker Toolbox for Windows».
Приложение «Docker for Windows».
Примечание: Обратите внимание, что «Docker Toolbox for Windows» является устаревшим решением, которым вы можете воспользоваться, если ваш компьютер не удовлетворяет требованиям установки «Docker for Windows». Более детально об установке Docker Toolbox вы можете прочитать здесь.
На этом уроке мы установим Docker через приложение «Docker for Windows», так как это решение является наиболее стабильным и надежным. Итак, сначала нам нужно скачать установщик.
Далее запускаем инсталлятор Docker Desktop Installer.exe . Следуйте инструкциям мастера установки, дайте установщику разрешение на использование прав администратора и дождитесь окончания установки.
Примечание: Приложению Docker права администратора нужны для того, чтобы установить сетевые компоненты, создать ссылки на само приложение и дать возможность Hyper-V управлять виртуальными машинами.
Чтобы запустить Docker Desktop, воспользуйтесь поиском в Windows:
Индикатором запуска Docker является иконка «кита», появившаяся в системном трее:
Если иконка «кита» скрыта в системном трее, то нажмите на стрелочку вверх, чтобы посмотреть все иконки. После установки Docker Desktop вы также получите всплывающее уведомление о том, что Docker установлен и готов к работе:
После того, как инициализация закончена, нажмите на иконку «кита» в системном трее и выберите пункт «About Docker Desktop» , чтобы проверить, что вы используете последнюю версию Docker.
Поздравляю! Вы успешно установили Docker Desktop на Windows.
Поделиться в социальных сетях:
Установить Docker на Windows 10 WSL2
В этой заметке я расскажу как поставить Докер на Windows 10, но сначала я опишу установку Windows Subsystem for Linux. Работу с самим Докером я описывать не буду, сделаю это позже.
Установка WSL2 на Windows 10
Установка элементарная, главное проверьте чтобы ваш компьютер и Windows 10 отвечали минимальным требованиям.
Подробный процесс установки описан на сайте Microsoft https://docs.microsoft.com/ru-ru/windows/wsl/install-win10 там же указаны минимальные требования.
Если коротко, то установка WSL2 на Windows 10 сводится к следующим шагам:
1) Запускаем PowerShell с правами администратора и включаем компонент «Подсистема Windows для Linux», для этого вводим команду:
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
2) Далее необходимо включить необязательный компонент «Платформа виртуальных машин», для этого в PowerShell с правами администратора выполняем команду:
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
4) Выбираем WSL 2 в качестве версии по умолчанию, если этого не сделать новые дистрибутивы Linux будут установлены в WSL 1. Вновь запускаем PowerShell с правами администратора и добавляем команду:
wsl —set-default-version 2
Далее нужно выбрать в магазине Microsoft Store нужный нам дистрибутив Linux и установить его, как обычное приложение из магазина. Я установил Ubuntu 18.04 (https://www.microsoft.com/store/apps/9N9TNGVNDL3Q)
После я запускаю установленную Убунту и задаю логин и пароль.
Все, Убунту можно закрыть.
Установка Docker на Windows 10
Теперь установим Docker Desktop WSL 2 backend, идем по ссылке https://hub.docker.com/editions/community/docker-ce-desktop-windows/ Скачиваем и устанавливаем Docker Desktop for Windows (stable).
Запускаем скачанный файл и производим обычную установку приложения Windows.
При установке убедитесь что установлена галочка на Enable WSL 2 Windows Features.
После установки следуйте инструкциям и перелогиньтесь в Windows, Докер запуститься при следующем входе в Windows, иногда в первый раз может понадобится довольно длительное время.
Когда он запустится, рекомендую в окне приветствия нажать Start и пройти небольшое обучение.
После обучающего урока у вас будет запущен ваш первый Docker контейнер.
И теперь по адресу http://localhost/tutorial/ вы можете увидеть инструкцию по дальнейшей работе.
Теперь вы можете заниматься разработкой в Windows 10 использую Docker.
Кстати, я не хочу чтобы Докер запускался каждый раз при включении компьютера, поэтому в настройках я убрал галочку Start Docker Desktop when you log in.
Как установить 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.