Как установить docker на windows 10
Обновлено: 03.07.2024
Подсистема и клиент 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. Если оно не указано, по умолчанию используется значение c:\programdata\docker .
В примере ниже управляющая программа Docker настраивается на прием только защищенных подключений через порт 2376.
Настройка Docker в службе Docker
Подсистему Docker можно также настроить, изменив службу Docker командой sc config . При использовании этого способа флаги подсистемы Docker задаются непосредственно в службе Docker. Выполните указанную ниже команду в командной строке (cmd.exe, не PowerShell).
Не нужно выполнять эту команду в том случае, если файл daemon.json уже содержит запись "hosts": ["tcp://0.0.0.0:2375"] .
Распространенные конфигурации
В следующих примерах файла конфигурации представлены распространенные конфигурации Docker. Их можно объединить в один файл конфигурации.
Создание сети по умолчанию
Чтобы настроить подсистему Docker таким образом, чтобы не была создана сеть NAT по умолчанию, используйте следующую конфигурацию.
Дополнительные сведения см. в статье Управление сетями Docker.
Задание группы безопасности для Docker
После входа в систему на узле Docker и запуска команд Docker эти команды выполняются через именованный канал. По умолчанию только члены группы "Администраторы" могут получить доступ к подсистеме Docker через именованный канал. Чтобы указать группу безопасности, имеющую такой доступ, используйте флаг group .
Конфигурация прокси-сервера
После задания переменной перезапустите службу Docker.
Удаление Docker
В этом разделе описывается, как удалить Docker и выполнить полную очистку компонентов системы Docker в Windows 10 или Windows Server 2016.
Все команды в этих инструкциях необходимо выполнять из сеанса PowerShell с повышенными привилегиями.
Подготовка системы к удалению Docker
Перед удалением Docker убедитесь, что в системе не запущены контейнеры.
Выполните следующие командлеты, чтобы найти работающие контейнеры:
Кроме того, перед удалением Docker рекомендуется удалить все контейнеры, образы контейнеров, сети и тома из системы. Это можно сделать, выполнив следующий командлет:
Удаление Docker
Затем необходимо начать собственно удаление Docker.
Удаление Docker в Windows 10
- На компьютере с Windows 10 перейдите в раздел Параметры > Приложения.
- В разделе Приложения и компоненты найдите пункт Docker для Windows
- Последовательно выберите Docker для Windows > Удалить.
Удаление Docker в Windows Server 2016
В сеансе PowerShell с повышенными привилегиями используйте командлеты Uninstall-Package и Uninstall-Module, чтобы удалить модуль Docker и соответствующий ему поставщик Управление пакетами из системы, как показано в следующем примере:
Вы можете найти поставщик пакетов, который использовался для установки Docker с помощью команды PS C:\> Get-PackageProvider -Name *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 с повышенными привилегиями для перезагрузки системы:
Docker Desktop для Windows — это нативное Windows-приложение, которое предоставляет среду для сборки и запуска контейнеризированных приложений. В его основе лежат нативная Hyper-V виртуализация и сеть, что является наиболее быстрым и стабильным вариантом для работы с Docker в Windows. Docker Desktop для Windows поддерживает как Windows-, так и Linux-контейнеры.
Что нужно знать перед установкой Docker на Windows?
Нам потребуется операционная система Windows 10 версии Корпоративная, Профессиональная или Образовательная. Также должны быть подключены компоненты Hyper-V и Windows Containers. Для работы с этими компонентами система должна выполнять следующие требования:
Не менее 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 Desktop Installer.exe . Следуйте инструкциям мастера установки, дайте установщику разрешение на использование прав администратора и дождитесь окончания установки.
Примечание: Приложению Docker права администратора нужны для того, чтобы установить сетевые компоненты, создать ссылки на само приложение и дать возможность Hyper-V управлять виртуальными машинами.
Чтобы запустить Docker Desktop, воспользуйтесь поиском в Windows:
Индикатором запуска Docker является иконка «кита», появившаяся в системном трее:
Чтобы все описанные ниже действия были успешно выполнены, потребуется 64-разрядная система с версией не меньше 2004 и сборкой не меньше 18362. Проверим версию и номер сборки, выполнив в PowerShell команду winver
Если версия ниже требуемой, то необходимо произвести обновление и только после этого идти дальше
Установка WSL 2
Сначала включим компонент Windows Subsystem for Linux (WSL). Для этого запустим PowerShell с правами администратора и выполним первую команду
Выполним следующую команду
Чтобы завершить установку, перезагрузим компьютер shutdown -r -t 1
Выберем WSL 2 по умолчанию для новых дистрибутивов Linux wsl --set-default-version 2
Для целей этой статьи это необязательно, но установим дистрибутив Linux через Microsoft Store, например, Ubuntu 20.04 LTS
При первом запуске установленного дистрибутива введем имя пользователя и пароль
Чтобы увидеть запущенные дистрибутивы Linux, выполним в PowerShell команду wsl --list --verbose
Чтобы завершить работу дистрибутива Linux, выполним команду wsl --terminate Ubuntu-20.04
Файловая система запущенного дистрибутива Linux будет смонтирована по этому пути \\wsl$
Установка Docker
Скачаем Docker Desktop для Windows и установим, следуя простым инструкциям
После установки запустим приложение Docker Desktop и установим интеграцию Docker с дистрибутивом Linux (WSL 2)
Теперь отправлять команды Docker можно как через PowerShell, так и через Bash. Выполним команду docker version
Запуск контейнеров
Хорошо. Давайте сделаем что-то более интересное. Например, запустим контейнер rabbitmq
Разберем выполненную команду:
docker run - запускает контейнер из образа. Если данный образ отсутствует локально, то предварительно он будет загружен из репозитория Docker Hub
--name rabbit1 - присваивает запускаемому контейнеру имя rabbit1
-p 8080:15672 - пробрасывает порт с хоста в контейнер. 8080 - порт на хосте, 15672 - порт в контейнере
rabbitmq:3.8.9-management - имя образа и его тег/версия, разделенные двоеточием
Теперь мы можем извне контейнера взаимодействовать с сервером RabbitMQ через порт 5672 и получить доступ к управлению из браузера через порт 8080
Посмотреть статус контейнеров, в том числе остановленных, можно с помощью команд docker container ls --all или docker ps -a
Чтобы остановить наш контейнер: docker stop rabbit1 . Запустить вновь: docker start rabbit1
Для нашего примера нам понадобится отдельная сеть, т.к. мы запустим целых два контейнера, которые будут взаимодействовать между собой. На самом деле все запускаемые контейнеры по умолчанию попадают в уже существующую сеть с именем bridge, но т.к. в своей сети мы без лишних проблем сможешь обращаться из одного контейнера к другому прямо по имени, создадим сеть с названием mynet типа bridge
Далее запустим redis и подключим его к ранее созданной сети. Благодаря параметру -d процесс в контейнере будет запущен в фоновом режиме
Добавим для взаимодействия с Redis пакет StackExchange.Redis через Package Manager Console
Мы не будем акцентироваться на правильности и красоте дизайна, а быстро создадим рабочий пример
Добавим в проект файл RandomWeatherService.cs, где будет находится служба для выдачи не очень точного прогноза
Добавим файл RedisRepository.cs, где будет находится служба кеширования сформированных прогнозов
Зарегистрируем созданные службы в классе Startup
И наконец, изменим созданный автоматически единственный контроллер WeatherForecastController следующим образом
Помимо прочего в проект автоматически был добавлен файл Dockerfile с инструкциями для Docker. Оставим его без изменений
В результате получим следующую структуру проекта
Если по какой-то невероятной причине Вам понадобятся исходники, то они здесь
Запустим наше приложение в контейнере под отладкой
После того как контейнер будет запущен, также подключим его к сети mynet
После убедимся, что все необходимые контейнеры находятся в одной сети
Далее установим Breakpoint в единственном методе контроллера и пошлем запрос через Postman, или через любой браузер
Кстати, используемый порт в Вашем случае может отличаться и его можно посмотреть в окне Containers
Результат в окне Postman
Дополнительно убедимся, что значение зафиксировано в redis, подключившись с помощью консоли redis-cli
В этой заметке я расскажу как поставить Докер на Windows 10, но сначала я опишу установку Windows Subsystem for Linux. Работу с самим Докером я описывать не буду, сделаю это позже.
Установка WSL2 на Windows 10
Установка элементарная, главное проверьте чтобы ваш компьютер и Windows 10 отвечали минимальным требованиям.
UPD.
Для Windows 11 и Windows 10 (сборка 19041 и выше) для установки WSL достаточно одной команды (PowerShell с правами администратора):
wsl --install
Эта команда включит все необходимые компоненты и установит дистрибутив Linux (по умолчанию Ubuntu), вам нужно будет только перезагрузить компьютер.
Если коротко, то установка WSL2 на Windows 10 сводится к следующим шагам:
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
4) Выбираем WSL 2 в качестве версии по умолчанию, если этого не сделать новые дистрибутивы Linux будут установлены в WSL 1. Вновь запускаем PowerShell с правами администратора и добавляем команду:
wsl --set-default-version 2
После я запускаю установленную Убунту и задаю логин и пароль.
Все, Убунту можно закрыть.
Установка Docker на Windows 10
Запускаем скачанный файл и производим обычную установку приложения Windows.
При установке убедитесь что установлена галочка на Enable WSL 2 Windows Features.
После установки следуйте инструкциям и перелогиньтесь в Windows, Докер запуститься при следующем входе в Windows, иногда в первый раз может понадобится довольно длительное время.
Когда он запустится, рекомендую в окне приветствия нажать Start и пройти небольшое обучение.
После обучающего урока у вас будет запущен ваш первый Docker контейнер.
Теперь вы можете заниматься разработкой в Windows 10 использую Docker.
Кстати, я не хочу чтобы Докер запускался каждый раз при включении компьютера, поэтому в настройках я убрал галочку Start Docker Desktop when you log in.
Сегодня контейнеры являются одной из самых популярных технологий на рынке. Если у вас нет машины на 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.
Читайте также: