Docker Desktop на Windows устанавливается через официальный инсталлятор с docker.com, требует включённую виртуализацию в BIOS и подсистему WSL 2, после чего вы получаете полноценную среду для запуска контейнеров прямо на своей рабочей машине без отдельного Linux-сервера.
Что вообще такое Docker и зачем он на винде
Короче, Docker — это инструмент для запуска приложений в изолированных контейнерах. Контейнер — это как лёгкая виртуальная машина, только без отдельной операционной системы. Приложение думает, что оно одно на сервере, а на самом деле рядом бегут ещё десятки таких же контейнеров.
Зачем это разработчику на Windows? Три причины.
Первая: вы разрабатываете приложение, которое будет работать на Linux-сервере. Вместо того чтобы каждый раз заливать код на сервер и тестировать там, вы запускаете контейнер локально. Точно такой же Linux, точно такие же настройки. Работает у меня на компе — будет работать на сервере.
Вторая: вам нужно быстро поднять базу данных, Redis, Elasticsearch, Kafka для разработки. Без Docker вы бы устанавливали всё это на свою винду, загаживали систему, боролись с конфликтами версий. С Docker — одна команда, и PostgreSQL 16 запущен. Другая команда — и он удалён бесследно.
Третья: DevOps. CI/CD пайплайны, Kubernetes, микросервисы. Без Docker в 2026 году никуда (ну, почти).
Системные требования
Не на каждом компе Docker заведётся. Вот что нужно:
- Windows 10 версии 21H2 или Windows 11 (Home, Pro, Enterprise)
- Процессор с поддержкой виртуализации (Intel VT-x или AMD-V)
- Минимум 4 ГБ оперативки (реально нужно 8+, лучше 16)
- WSL 2 (подсистема Windows для Linux)
- Около 2 ГБ свободного места на диске (плюс место для образов)
Мой товарищ Артём на своём Dell Inspiron 15 с 8 ГБ оперативки и i5-1135G7 запускает Docker без проблем. Три-четыре контейнера крутятся одновременно. Но когда он пробовал запустить полноценный стек из 12 микросервисов, компьютер начал задыхаться. 16 ГБ — вот реальный минимум для серьёзной работы.
Включаем виртуализацию в BIOS
Первый шаг — убедиться, что виртуализация включена в BIOS. Без неё Docker не запустится.
Как проверить: откройте Диспетчер задач (Ctrl+Shift+Esc), вкладка «Производительность», «ЦП». Внизу справа должно быть «Виртуализация: Включено».
Если выключено:
- Перезагрузите компьютер и зайдите в BIOS (обычно Del, F2 или F10 при загрузке)
- Найдите раздел Advanced или CPU Configuration
- Включите Intel Virtualization Technology (VT-x) или AMD SVM Mode
- Сохраните и перезагрузитесь
У каждого производителя материнской платы BIOS выглядит по-разному. Если не можете найти нужный пункт, загуглите «включить виртуализацию [модель материнки]».
Устанавливаем WSL 2
Docker Desktop на Windows работает через WSL 2 (Windows Subsystem for Linux). Это не опция, это необходимость.
Откройте PowerShell от имени администратора:
# Устанавливаем WSL с дистрибутивом Ubuntu по умолчанию
wsl --install
# После перезагрузки проверяем версию
wsl --version
# Убеждаемся что WSL 2 используется по умолчанию
wsl --set-default-version 2После установки WSL попросит создать пользователя Linux. Придумайте логин и пароль. Этот пароль вам понадобится для sudo-команд внутри Linux.
Кстати, если WSL уже установлен, но версия 1, обновите:
# Обновляем ядро WSL
wsl --update
# Переключаем дистрибутив на WSL 2
wsl --set-version Ubuntu 2Установка Docker Desktop
Теперь самое простое.
- Идёте на docker.com/products/docker-desktop
- Скачиваете «Docker Desktop for Windows»
- Запускаете инсталлятор
- Оставляете галочку «Use WSL 2 instead of Hyper-V» (если предложит выбор)
- Ждёте окончания установки
- Перезагружаете компьютер
После перезагрузки Docker Desktop запустится автоматически. В трее появится иконка кита. Зелёный кит — Docker работает. Оранжевый — запускается. Красный — что-то сломалось.
Проверяем в терминале:
# Версия Docker
docker --version
# Запускаем тестовый контейнер
docker run hello-worldЕсли увидели «Hello from Docker!» — всё работает. Поздравляю.
Настройка Docker Desktop: что поменять сразу
По умолчанию Docker Desktop жрёт ресурсы как не в себя. Нужно настроить.
Откройте Docker Desktop, шестерёнка (Settings):
Resources — WSL Integration:
- Включите интеграцию с вашим дистрибутивом WSL (Ubuntu или какой у вас)
- Это позволит использовать docker команды напрямую из Linux-терминала
Resources — Advanced:
- Memory: поставьте 4-6 ГБ (если у вас 16 ГБ общей памяти). Не давайте Docker больше половины оперативки
- CPUs: 2-4 ядра достаточно для разработки
- Disk image size: увеличьте если планируете много образов (100+ ГБ для серьёзной работы)
General:
- «Start Docker Desktop when you sign in» — выключите если не используете Docker каждый день. Экономит ресурсы при загрузке
Грубо говоря, Docker Desktop в фоне кушает 1-2 ГБ оперативки даже без запущенных контейнеров. На машине с 8 ГБ это ощутимо.
Первые контейнеры: практические примеры
Теория — ладно. Давайте запустим что-нибудь полезное.
Веб-сервер Nginx:
# Запускаем Nginx на порту 8080
docker run -d --name my-nginx -p 8080:80 nginx
# Открываем http://localhost:8080 в браузере
# Видим страницу Welcome to nginx!PostgreSQL база данных:
# Запускаем PostgreSQL 16 с паролем для разработки
docker run -d --name my-postgres -e POSTGRES_PASSWORD=devpassword -p 5432:5432 postgres:16
# Подключаемся к базе (нужен psql или pgAdmin)
# Хост: localhost, Порт: 5432, Пользователь: postgresА ещё есть Docker Compose — для запуска нескольких контейнеров одним файлом. Создаёте docker-compose.yml:
# docker-compose.yml для веб-приложения с базой данных
services:
web:
image: nginx
ports:
- "8080:80"
db:
image: postgres:16
environment:
POSTGRES_PASSWORD: devpassword
ports:
- "5432:5432"Запуск одной командой:
# Поднимаем все сервисы из файла
docker compose up -d
# Останавливаем и удаляем
docker compose downЧастые проблемы и решения
«Docker Desktop requires a newer WSL kernel version» — обновите WSL:
wsl --update«Hardware assisted virtualization and data execution protection must be enabled» — включите виртуализацию в BIOS (описано выше).
«Docker Desktop stopped» после запуска. Попробуйте:
# Перезапускаем сервис WSL
wsl --shutdown
# Запускаем Docker Desktop сноваКонтейнеры работают медленно? Файловая система WSL 2 медленнее при доступе к файлам на диске Windows (/mnt/c/). Храните проекты внутри файловой системы Linux (~/projects/) для максимальной скорости. Разница колоссальная.
Тут такое дело: на рабочих машинах с Windows Pro и Enterprise Docker может использовать Hyper-V вместо WSL 2. Hyper-V стабильнее, но потребляет больше ресурсов. Для большинства разработчиков WSL 2 — лучший выбор.
Docker Desktop: платный или бесплатный
Важный вопрос. Docker Desktop бесплатен для личного использования, образования и небольших компаний (до 250 сотрудников и до 10 миллионов долларов годового дохода). Для крупных компаний нужна подписка Docker Business.
Если вы фрилансер или работаете в маленькой команде — пользуйтесь бесплатно. Если крупная контора — купите подписку или используйте альтернативы (Podman, Rancher Desktop).
Ну и лицензионная Windows тут не просто формальность. Docker Desktop проверяет целостность системных компонентов, и на пиратских сборках бывают странные глюки с WSL 2 и Hyper-V. Нормальный ключик для Windows 11 Pro можно взять в keytrust24.store — там моментальная доставка, и активация занимает пару минут.
Полезные команды на каждый день
# Список запущенных контейнеров
docker ps
# Все контейнеры включая остановленные
docker ps -a
# Остановить контейнер
docker stop имя_контейнера
# Удалить контейнер
docker rm имя_контейнера
# Список скачанных образов
docker images
# Удалить образ
docker rmi имя_образа
# Зайти внутрь контейнера в терминал
docker exec -it имя_контейнера bash
# Посмотреть логи контейнера
docker logs имя_контейнера
# Очистить всё неиспользуемое (образы, контейнеры, сети)
docker system prune -aПоследняя команда освобождает кучу места. У меня однажды Docker занимал 40 ГБ старыми образами. После prune осталось 5 ГБ. Магия.
Что дальше
Docker установлен. Контейнеры запускаются. Что учить дальше? Dockerfile (создание своих образов), Docker Compose (оркестрация нескольких контейнеров), Docker volumes (постоянное хранение данных), Docker networks (сети между контейнерами). А потом Kubernetes, но это уже совсем другая история.
Безопасность контейнеров: о чём стоит помнить
Docker — мощный инструмент, но безопасность никто не отменял.
Не запускайте контейнеры от root без необходимости. Используйте официальные образы с Docker Hub (они помечены синей галочкой «Docker Official Image»). Регулярно обновляйте образы — старые версии могут содержать уязвимости.
Кстати, мой товарищ Николай, бэкенд-разработчик на Dell XPS 15 с i7-12700H, однажды скачал образ PostgreSQL от неизвестного автора, и тот втихую отправлял данные на внешний сервер. С тех пор он использует только официальные образы и проверяет Dockerfile перед запуском. Тут такое дело: в Docker Hub миллионы образов, и не все они безопасны.
Работает? Ещё как работает.



