Содержание статьи

Docker позволяет запускать приложения в изолированных контейнерах, что упрощает тестирование, развертывание и масштабирование сервисов. На Ubuntu поддерживаются версии Docker Engine начиная с 18.04 и выше, при этом рекомендуются последние стабильные сборки для обеспечения безопасности и совместимости.
Перед установкой Docker необходимо проверить версию ядра Linux (рекомендуется 4.15 или выше) и наличие утилит curl, apt-transport-https и ca-certificates. Эти компоненты обеспечивают корректное добавление официального репозитория Docker и безопасное скачивание пакетов.
В руководстве рассматривается пошаговый процесс: от подготовки системы и добавления репозитория до установки Docker Engine, настройки прав пользователя и запуска первых контейнеров. Каждый шаг сопровождается конкретными командами и проверками, что позволяет минимизировать ошибки и ускорить развертывание окружения.
После выполнения всех инструкций пользователь сможет запускать контейнеры без sudo, проверять статус служб, обновлять Docker и управлять образами, что обеспечивает стабильную и управляемую работу приложений на Ubuntu.
Проверка совместимости Ubuntu с Docker
Docker поддерживается на Ubuntu начиная с версии 18.04 LTS, при этом рекомендуется использовать версии 20.04 и 22.04 для получения актуальных обновлений безопасности. Для проверки версии ОС выполните команду lsb_release -a или cat /etc/os-release. Результат должен содержать корректное название дистрибутива и версию.
Ядро Linux должно быть версии 4.15 или выше. Проверить версию ядра можно через команду uname -r. Docker использует возможности ядра, такие как namespaces и cgroups, поэтому устаревшие ядра могут вызвать ошибки при запуске контейнеров.
Для корректной работы Docker необходимы пакеты curl, apt-transport-https и ca-certificates. Их наличие проверяется командами dpkg -l | grep curl и аналогично для других пакетов. Если пакеты отсутствуют, их следует установить через sudo apt install.
Также рекомендуется убедиться, что система имеет как минимум 2 ГБ оперативной памяти и свободное дисковое пространство не менее 10 ГБ для размещения образов и контейнеров. На виртуальных машинах необходимо включить поддержку виртуализации (VT-x/AMD-V) в BIOS или UEFI.
Установка необходимых пакетов и обновление системы

Перед установкой Docker рекомендуется обновить список пакетов и саму систему для исключения конфликтов версий:
- Обновление индексов пакетов: sudo apt update
- Обновление установленных пакетов до последних версий: sudo apt upgrade -y
- Очистка устаревших пакетов: sudo apt autoremove -y
Для работы с официальным репозиторием Docker необходимы следующие пакеты:
- curl – для загрузки GPG-ключей и скриптов установки
- apt-transport-https – для работы с HTTPS-репозиториями
- ca-certificates – для проверки подлинности сертификатов
- gnupg – для управления ключами репозиториев
- lsb-release – для определения версии дистрибутива
Установка выполняется командой:
sudo apt install -y curl apt-transport-https ca-certificates gnupg lsb-release
После установки пакетов рекомендуется проверить их версии:
- curl —version
- lsb_release -a
Эти шаги обеспечивают стабильное подключение к репозиториям Docker и предотвращают ошибки при дальнейшем процессе установки.
Добавление официального репозитория Docker
Для установки последней версии Docker необходимо добавить официальный репозиторий. Сначала импортируется GPG-ключ для проверки подлинности пакетов:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
Затем добавляется репозиторий в список источников APT с указанием стабильной ветки и архитектуры системы:
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] \
https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
После добавления репозитория обновляется индекс пакетов для загрузки актуальных данных:
sudo apt update
Проверить успешное добавление репозитория можно командой:
apt-cache policy docker-ce
Установка Docker Engine на Ubuntu

После добавления официального репозитория Docker можно установить Docker Engine и сопутствующие компоненты. Рекомендуется устанавливать конкретную стабильную версию для стабильной работы контейнеров.
Установка выполняется командой:
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Для проверки установленных компонентов и их версий используется команда:
docker --version
docker compose version
Сводная таблица установленных пакетов и назначение каждого компонента:
| Компонент | Назначение | Проверка установки |
|---|---|---|
| docker-ce | Основной движок Docker для запуска контейнеров | docker —version |
| docker-ce-cli | Интерфейс командной строки для управления Docker | docker —help |
| containerd.io | Служба управления контейнерами и их жизненным циклом | systemctl status containerd |
| docker-buildx-plugin | Расширение для создания мультиархитектурных образов | docker buildx version |
| docker-compose-plugin | Плагин для запуска многоконтейнерных приложений через docker compose | docker compose version |
После установки рекомендуется убедиться, что служба Docker запущена и активирована при старте системы:
sudo systemctl enable docker
sudo systemctl start docker
sudo systemctl status docker
Настройка прав пользователя для работы с Docker без sudo
По умолчанию команды Docker требуют прав суперпользователя. Для выполнения команд без sudo создается специальная группа docker и добавляется текущий пользователь.
Создание группы выполняется командой:
sudo groupadd docker
Добавление пользователя в группу:
sudo usermod -aG docker $USER
Чтобы изменения вступили в силу, необходимо завершить текущую сессию и войти снова или выполнить:
newgrp docker
Проверка правильности настройки:
docker run --rm hello-world
Если контейнер запускается без ошибок и отображает сообщение о корректной работе Docker, права настроены верно. Эта настройка обеспечивает выполнение команд Docker без постоянного использования sudo и упрощает управление контейнерами для текущего пользователя.
Проверка работы Docker и запуск первого контейнера
После установки и настройки прав необходимо убедиться, что Docker корректно работает на системе. Для этого выполните команду:
docker info
Запуск тестового контейнера выполняется командой:
docker run --rm hello-world
Для проверки списка активных контейнеров используйте:
docker ps -a
Если контейнер hello-world завершился успешно, это подтверждает, что Docker Engine функционирует корректно и система готова к запуску сложных контейнеров и многоконтейнерных приложений.
Обновление Docker и управление контейнерами

Регулярное обновление Docker позволяет использовать новые функции и исправления безопасности. Для обновления пакетов выполните:
sudo apt update
sudo apt install --only-upgrade docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
После обновления рекомендуется проверить текущую версию:
docker --version
docker compose version
Основные команды для управления контейнерами:
- docker ps – список запущенных контейнеров
- docker ps -a – список всех контейнеров, включая остановленные
- docker start <container_id> – запуск существующего контейнера
- docker stop <container_id> – остановка работающего контейнера
- docker rm <container_id> – удаление контейнера
- docker logs <container_id> – просмотр логов контейнера
- docker exec -it <container_id> /bin/bash – вход в контейнер для интерактивной работы
Для управления образами используется:
- docker images – список загруженных образов
- docker rmi <image_id> – удаление образа
- docker pull <image_name> – загрузка нового образа с Docker Hub
Эти команды позволяют поддерживать Docker в актуальном состоянии и управлять контейнерами и образами без ошибок и конфликтов версий.
Вопрос-ответ:
Какая версия Ubuntu подходит для установки Docker?
Для стабильной работы Docker рекомендуется использовать Ubuntu версии 18.04 LTS и выше. На версиях ниже 18.04 могут возникать ошибки из-за отсутствия современных функций ядра и библиотек. Оптимальный вариант — версии 20.04 или 22.04, которые получают регулярные обновления безопасности и полностью поддерживаются официальным репозиторием Docker.
Как проверить, что Docker правильно установлен и готов к работе?
После установки Docker выполните команду docker info для получения информации о движке, активных контейнерах и настройках хранения. Для теста работы контейнеров используйте docker run —rm hello-world. Если контейнер запускается и выводит подтверждающее сообщение, Docker функционирует корректно.
Можно ли запускать Docker без прав суперпользователя?
Да, для этого создается группа docker и текущий пользователь добавляется в эту группу командой sudo usermod -aG docker $USER. После повторного входа в систему или выполнения newgrp docker команды Docker можно выполнять без sudo. Это упрощает работу с контейнерами и исключает постоянное использование привилегий администратора.
