Привет! Если вы работаете с Linux, особенно на дистрибутивах Ubuntu или Debian, и хотите упростить процесс разработки и развертывания приложений, то Docker — это то, что вам нужно. В этой статье мы подробно рассмотрим, как установить Docker Engine на вашу систему.
Что такое Docker?
Docker — это платформа, которая позволяет разработчикам автоматизировать развертывание приложений в так называемых контейнерах. Контейнеры изолированы друг от друга и содержат всё необходимое для работы приложения: код, среду выполнения, системные инструменты, библиотеки и настройки. Это гарантирует, что ваше приложение будет работать одинаково независимо от среды, в которой оно запускается.
Почему Docker?
- Изоляция: Приложения в контейнерах не конфликтуют друг с другом.
- Портативность: Контейнеры можно легко перемещать между разными системами.
- Воспроизводимость: Ваше приложение всегда будет работать одинаково, где бы вы его ни запускали.
- Эффективность: Контейнеры легкие и запускаются быстрее, чем виртуальные машины.
Подготовка к установке
Прежде чем начать, убедитесь, что ваша система соответствует минимальным требованиям и обновлена.
Шаг 1: Обновление системы
Всегда начинайте с обновления списка пакетов и их апгрейда, чтобы убедиться, что у вас самые свежие версии репозиториев и библиотек. Откройте терминал и выполните следующие команды:
sudo apt update
sudo apt upgrade -y
Шаг 2: Удаление старых версий Docker (если есть)
Если у вас ранее были установлены старые версии Docker (например, docker.io, docker-engine или docker-ce), рекомендуется удалить их, чтобы избежать конфликтов.
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt remove $pkg; done
Установка Docker Engine
Мы будем устанавливать Docker Engine из официального репозитория Docker, что гарантирует получение актуальных и стабильных версий.
Шаг 3: Установка необходимых пакетов
Установите пакеты, которые позволят apt использовать репозитории по HTTPS:
sudo apt install ca-certificates curl gnupg lsb-release -y
Шаг 4: Добавление официального GPG ключа Docker
Docker использует GPG ключи для проверки подлинности пакетов. Добавьте официальный ключ Docker:
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
Примечание: Если вы используете Debian, замените ubuntu в команде curl на debian.
Шаг 5: Добавление репозитория Docker
Теперь добавьте репозиторий Docker в список источников apt:
echo \
"deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
"$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
Примечание: Опять же, если у вас Debian, $(. /etc/os-release && echo "$VERSION_CODENAME") автоматически определит кодовое имя вашего дистрибутива (например, bookworm, bullseye).
Шаг 6: Установка Docker Engine
После добавления репозитория обновите список пакетов и установите Docker Engine, CLI и Containerd:
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y
Проверка установки Docker
Чтобы убедиться, что Docker установлен и работает корректно, запустите тестовый образ hello-world:
sudo docker run hello-world
Если установка прошла успешно, вы увидите сообщение о том, что Docker работает правильно.
Управление Docker без sudo (необязательно, но рекомендуется)
По умолчанию для запуска команд Docker требуется использовать sudo. Это может быть неудобно. Чтобы запускать Docker команды без sudo, добавьте вашего пользователя в группу docker.
Шаг 7: Добавление пользователя в группу docker
sudo usermod -aG docker $USER
После выполнения этой команды вам нужно либо перезагрузить систему, либо выйти из текущей сессии и войти снова, чтобы изменения вступили в силу.
Шаг 8: Проверка без sudo
После перезахода в систему, попробуйте снова запустить hello-world без sudo:
docker run hello-world
Если команда выполнится успешно, значит, вы можете использовать Docker без привилегий суперпользователя.
Заключение
Поздравляем! Теперь у вас установлен и настроен Docker на вашей системе Ubuntu или Debian. Вы готовы начать создавать и запускать контейнеризированные приложения. Docker значительно упрощает процесс разработки, тестирования и развертывания, делая вашу работу более эффективной.
Если у вас возникнут вопросы или проблемы в процессе установки, не стесняйтесь задавать их!