Docker не устанавливается windows 7

Обновлено: 04.07.2024

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 является иконка «кита», появившаяся в системном трее:



Подсистема и клиент 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 с повышенными привилегиями для перезагрузки системы:

image

Данная публикация является разбором особенностей контейнерной виртуализации 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: File ./ib_logfile101: 'aio write' returned OS error 122. Cannot continue operation

По умолчанию в базе данных включеён параметр 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 как само собой разумеющееся.

Буду рад услышать ваши отзывы. Не стесняйтесь предлагать улучшения или указывать на мои ошибки.

Руководство: Установить Docker на Windows 7, 8 и 10 с помощью Docker Toolbox?

В этом руководстве я объясню, как установить Docker на Windows 7 и 8 с помощью Docker Toolbox. Это руководство также должно работать с 32-разрядными версиями Win 10, не Pro или Ent. Docker, если вы еще не знаете, самодостаточные приложения, что делает их чрезвычайно простыми в установке и управлении. Приложения Home Sever, такие как SickRage, Sonarr, CouchPotato, Plex и т.д., Могут быть установлены за считанные секунды. Интересный? Прочтите наше руководство о том, что такое докер и чем он отличается от VirtualBox, для получения дополнительной информации о том, что он может сделать для вас. Мы уже рассмотрели настройку Docker в Ubuntu и Windows 10 64-bit Pro и Ent.

Что делать, если у вас Win 10 Home? Или даже Windows 7 или 8. Или что, если у вас установлен VirtualBox на 64-битном Win 10 Pro / Ent (установка docker сделает виртуальные машины неработоспособными)? Не бойтесь, в этом руководстве по Docker для Windows мы увидим, как установить Docker для Windows 7 и 8 (все выпуски) и 10 (32-разрядный или не Pro или не Ent) с помощью Docker Toolbox. Это также руководство, которому нужно следовать, если у вас Win 10 64-bit Pro или Ent и вы хотите продолжать использовать VirtualBox для запуска других виртуальных машин.

Для простоты все ссылки на Windows 10, выходящие за рамки этого пункта в этом руководстве, относятся ко всем 32-разрядным версиям и 64-разрядным версиям не-Pro или не-Ent. Все остальные версии Windows 10 уже имеют Hyper-V, и поэтому Docker может быть установлен непосредственно вместо Docker Toolbox.

Установите Docker на Windows 7, 8 и 10

Windows 7, 8 и некоторые выпуски Windows 10 не имеют Hyper-V. Docker не будет работать должным образом в этих системах. Но вы можете установить Docker с помощью Docker Toolbox. Настройка Docker с помощью Docker Toolbox не позволяет Docker работать в Windows. Вместо этого он использует так называемую докер-машину для создания виртуальной машины (ВМ) в VirtualBox. Поэтому, если у вас нет VirtualBox, Docker Toolbox автоматически установит его для вас. Вам не нужно связываться с VirtualBox. Docker Toolbox автоматически создает виртуальную машину Linux на VirtualBox, в которой размещается Docker в вашей системе Windows. Довольно круто, верно? Давайте продолжим и посмотрим, как установить Docker на Windows 7, 8 и 10 с включенным VirtualBox.

Прежде чем начать, включите аппаратную виртуализацию Intel VT-x в BIOS или прошивке UEFI. Это необходимо для запуска Docker. Как только это будет сделано, установить Docker в Windows так же просто, как загрузить установщик и запустить его, как при любой установке программного обеспечения.

Рекомендуемые руководства:

Чтобы установить Docker с помощью Docker Toolbox, сначала посетите страницу загрузки Docker Toolbox и загрузите последнюю версию установщика, как показано на рисунке ниже.

Руководство: Установить Docker на Windows 7, 8 и 10 с помощью Docker Toolbox?

Загрузить Docker Toolbox для Windows 7, 8 и 10

После загрузки дважды щелкните, чтобы запустить установщик Docker Toolbox.

2. Установите Docker с помощью Docker Toolbox

Когда появится предупреждение безопасности Windows, нажмите «Выполнить», чтобы продолжить настройку Docker Toolbox.

Руководство: Установить Docker на Windows 7, 8 и 10 с помощью Docker Toolbox?

Запустите программу установки Docker Toolbox в Windows

3. Выберите Docker Toolbox Components

Далее вам нужно будет выбрать компоненты Docker для установки. Выберите «Полная установка» – все компоненты будут проверены, как показано ниже. Обратите внимание, что VirtualBox предварительно проверен. Без поддержки нативного гипервизора Docker необходим VirtualBox для запуска в фоновом режиме. Не волнуйтесь, вам не нужно открывать VirtualBox или что-либо делать с ним.

Руководство: Установить Docker на Windows 7, 8 и 10 с помощью Docker Toolbox?

Выберите компоненты панели инструментов Docker для установки

Kitematic – это потрясающий интерфейс графического интерфейса движка Docker, который упрощает установку и управление контейнерами. Более подробная информация о Kitematic будет опубликована в ближайшее время, но довольно просто перемещаться, искать и устанавливать контейнеры приложений, таких как Plex, Sonarr, CouchPotato и т.д.

Рекомендуемые сборки HTPC / Home Server:

4. Выберите Docker Toolbox Дополнительные задачи

Затем вам нужно будет выбрать дополнительные задачи для выполнения во время установки. Здесь снова оставьте значения по умолчанию, если вы не знаете, что делаете.

Руководство: Установить Docker на Windows 7, 8 и 10 с помощью Docker Toolbox?

Выберите Docker Toolbox Дополнительные задачи

5. Установите Docker с включенным VirtualBox

Наконец, вы можете просмотреть сводную информацию об установке и нажать «Установить», чтобы настроить Docker в Windows 7, 8 и 10 с помощью Docker Toolbox.

Руководство: Установить Docker на Windows 7, 8 и 10 с помощью Docker Toolbox?

Установите Docker с включенным VirtualBox в Windows 7, 8 и 10

Когда установка Docker Toolbox завершится, вам будет предложено открыть ярлыки в проводнике.

Руководство: Установить Docker на Windows 7, 8 и 10 с помощью Docker Toolbox?

Настройка Docker в Windows с использованием Docker Toolbox Complete

Вы также можете получить доступ к компонентам панели инструментов Docker через меню приложений Windows.

6. Запустите Docker, используя Docker Machine и VirtualBox

Если вы решили открыть ярлыки в Проводнике в конце установки Docker с помощью Docker Toolbox, вы увидите два ярлыка, как на рисунке ниже.

Руководство: Установить Docker на Windows 7, 8 и 10 с помощью Docker Toolbox?

Иконки быстрого доступа к докеру

Для новичков и тех, кто не предпочитает командную строку, я рекомендую открыть Docker с помощью Kitematic. Если запуск Kitematic завершился неудачно, выберите «Использовать VirtualBox», когда появится опция. Если вам удобен доступ к Docker через командную строку, откройте «Терминал быстрого запуска Docker» (первый значок на картинке выше).

Руководство: Установить Docker на Windows 7, 8 и 10 с помощью Docker Toolbox?

Запустите Docker в Windows

Как только Docker терминал запускается и появляется, как показано выше, вы можете установить любые Docker контейнеры или образы.

Докер успешно установлен. Что делать дальше?

Если все прошло хорошо, у вас должен быть установлен Docker для Windows 7, 8 и 10, служба должна работать и ожидать размещения контейнеров с различными приложениями. В следующих руководствах мы покажем вам, как устанавливать док-контейнеры с приложениями (SickRage, Sonarr, CouchPotato, Plex и т.д. ), Чтобы построить свой домашний сервер на движке докеров. Мы также покажем вам, как использовать Kitematic, чтобы сделать вещи еще проще. Звучит захватывающе? Следуйте этому руководству по Windows, установите Docker на Windows 7, 8 и 10 с помощью Docker Toolbox и приготовьтесь к поездке.

Читайте также: