🛠️ Установка инструментов

Docker Desktop, WSL2, AWS CLIDocker
Кратко: весь курс держится на одной программе — Docker Desktop. На Windows ей нужен WSL2, и это единственный шаг, который стоит сделать заранее.

Что понадобится

ИнструментЗачемОбязателен
Docker Desktopдвижок, образы, контейнеры, Compose — всё в одномда
WSL2подсистема Linux, на которой Docker работает под Windowsна Windows
AWS CLI + boto3облачный блок курсаво второй половине
Аккаунт Docker Hubпубликация своих образовпо желанию

WSL2 — только для Windows

Docker Desktop под Windows работает поверх WSL2. Установка одной командой в PowerShell от администратора:

wsl --install

Команда ставит подсистему и дистрибутив Ubuntu, после чего требуется перезагрузка. Проверить состояние:

wsl -l -v
В колонке VERSION должна стоять 2. Если стоит 1 — wsl --set-version Ubuntu 2.
Виртуализация должна быть включена в BIOS/UEFI. Если wsl --install жалуется на неё — это настройка материнской платы, из Windows её не изменить.

Docker Desktop

СистемаКак ставить
Windowswinget install Docker.DockerDesktop
macOSbrew install --cask docker
LinuxDocker Engine из репозитория — инструкция на docs.docker.com

После установки Docker Desktop нужно запустить — без работающего демона любая команда docker завершится ошибкой подключения.

Первый контейнер

Проверочный образ, который ничего не ломает:

docker run hello-world

Docker скачает крошечный образ, запустит его и напечатает поздравление. Это подтверждает разом три вещи: демон работает, сеть до реестра есть, права в порядке.

docker ps -a
docker images

AWS CLI и boto3

Нужны в облачных уроках:

СистемаКоманда
Windowswinget install Amazon.AWSCLI
macOSbrew install awscli
Linuxsudo apt install awscli

SDK для Python ставится в виртуальное окружение проекта:

python -m venv .venv
.venv\Scripts\Activate.ps1
pip install boto3
Ключи доступа AWS задаются командой aws configure и хранятся в файле ~/.aws/credentials. В код их не вписывают и в репозиторий не коммитят.

Проверка, что всё встало

Команды, после которых можно начинать первый урок:

КомандаОжидаемый результат
wsl -l -vдистрибутив с VERSION = 2 (Windows)
docker --versionверсия клиента
docker run hello-worldсообщение «Hello from Docker!»
docker compose versionверсия Compose v2
aws --versionверсия CLI (для облачных уроков)

Частые проблемы

error during connect: docker daemon is not running

Docker Desktop не запущен. Откройте программу и дождитесь, пока значок кита перестанет мигать.

WSL2 installation is incomplete

Не установлено обновление ядра WSL. Выполните wsl --update и перезагрузитесь.

Порт уже занят

Контейнер не поднимется, если порт слушает другая программа. Посмотрите, кто именно, и поднимите контейнер на другом порту:

netstat -ano | findstr :8080
docker run -p 8081:80 nginx

Docker съел всё место на диске

Остановленные контейнеры и старые образы копятся. Смотрите, сколько занято, и чистите осознанно — prune удаляет данные безвозвратно:

docker system df
docker image prune