Введение / Зачем это нужно
Docker позволяет упаковывать приложения и их зависимости в изолированные контейнеры, которые работают одинаково на любой машине. Установка Docker на Linux превращает систему в хост для запуска таких контейнеров: вы получаете легковесную среду для разработки, тестирования и деплоя. По итогу этого гайда у вас будет работающий Docker Engine, готовый к запуску образов и управлению контейнерами.
Требования / Подготовка
- Система на базе Linux с доступом к терминалу.
- Пользователь с правами
sudo. - Подключение к интернету для загрузки пакетов.
- Архитектура x86_64 / amd64 или ARM64 (в зависимости от дистрибутива).
Пошаговая инструкция
Шаг 1: Обновление системы и установка базовых пакетов
Обновите списки пакетов и установите утилиты для работы с репозиториями по HTTPS:
sudo apt update && sudo apt upgrade -y
sudo apt install -y ca-certificates curl gnupg lsb-release
Эти команды обновят систему и добавят сертификаты, curl и gpg, необходимые для безопасного скачивания ключей.
Шаг 2: Добавление ключей и репозитория Docker
Создайте директорию для ключей и скачайте официальный GPG-ключ Docker:
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/$(. /etc/os-release && echo "$ID")/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
Добавьте стабильный репозиторий в список источников:
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/$(. /etc/os-release && echo "$ID") \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
После этого обновите списки пакетов:
sudo apt update
Шаг 3: Установка Docker Engine
Установите актуальные выпуски Docker CE, CLI и containerd:
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Включите и запустите системную службу:
sudo systemctl enable --now docker
💡 Совет: если вы планируете запускать Docker без постоянного использования
sudo, добавьте своего пользователя в группуdocker:sudo usermod -aG docker $USERПосле этого перезайдите в сеанс или выполните
newgrp docker, чтобы применить права.
Шаг 4: Проверка установки
Запустите тестовый контейнер, чтобы убедиться, что Docker работает и может скачивать образы:
docker run --rm hello-world
Если всё настроено верно, вы увидите сообщение о том, что клиент успешно взаимодействует с демоном, а тестовый контейнер выполнился и был удалён.
Проверка результата
Убедитесь, что служба активна и работает:
sudo systemctl status docker
Проверьте версию установленного Docker:
docker --version
docker compose version
Посмотрите список доступных образов (пока он может быть пустым или содержать только hello-world):
docker images
Возможные проблемы
- Отказано в доступе при запуске без
sudo
Убедитесь, что ваш пользователь добавлен в группуdocker, и перезайдите в сеанс. - Не обновляется список пакетов после добавления репозитория
Проверьте, что путь к ключу в файле репозитория совпадает с фактическим расположением/etc/apt/keyrings/docker.asc. - Служба Docker не запускается после установки
Попробуйте запустить её вручную:sudo systemctl start docker. Если возникают ошибки, проверьте журнал:journalctl -u docker --no-pager -n 20. - Ошибки сети при скачивании образов
Убедитесь, что DNS настроен корректно, и проверьте доступ кhttps://registry-1.docker.io. При необходимости настройте зеркала или прокси в конфигурации Docker.