Skip to content
VDS · Docker і контейнери

Docker: встановлення на машину

Як правильно встановити Docker на Debian, Ubuntu і AlmaLinux, чому офіційний репозиторій кращий за системний пакет і що перевірити одразу після встановлення.

Оновлено 23 серпня 2026 р.

Docker пакує застосунок разом з усім його середовищем у контейнер: вам не доведеться узгоджувати версії бібліотек, а переїзд на іншу машину зводиться до копіювання файлу конфігурації. На VDS з повним root-доступом він встановлюється стандартно.

Встановлення з офіційного репозиторію

У системних репозиторіях лежить або стара версія, або docker.io без плагіна Compose v2. Різниця має значення: половина посібників в інтернеті написана для сучасного docker compose, а не docker-compose.

Debian 12 і 13, Ubuntu 22.04 / 24.04 / 26.04:

sudo apt update
sudo apt install -y ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/debian/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/debian $(. /etc/os-release && echo $VERSION_CODENAME) stable" | sudo tee /etc/apt/sources.list.d/docker.list
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Для Ubuntu замініть debian на ubuntu у двох місцях.

AlmaLinux 9 і 10, CentOS Stream 9:

sudo dnf -y install dnf-plugins-core
sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo dnf -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo systemctl enable --now docker

Перевірка встановлення

docker --version
docker compose version
sudo docker run --rm hello-world
docker info | grep -E "Storage Driver|Cgroup|Docker Root Dir"

Якщо hello-world завантажився й надрукував привітання, усе працює. Драйвер зберігання має бути overlay2.

Робота без sudo

sudo usermod -aG docker $USER
newgrp docker

Група docker рівнозначна root. Будь-хто в ній може запустити контейнер зі змонтованим root хостом і стати адміністратором. Додавайте лише тих, кому ви однаково довірили б root, — і ніколи не надавайте його застосункам.

Що налаштувати одразу

Обмежте логи, інакше один балакучий контейнер з'їсть ваш диск. Створіть /etc/docker/daemon.json:

{
  "log-driver": "json-file",
  "log-opts": { "max-size": "20m", "max-file": "3" }
}
sudo systemctl restart docker

Докладніше — логи контейнерів.

Скільки місця це займає

Сам Docker — близько 500 МБ; образи й томи зростають уже звідти. На VDS-1 з диском 40 ГБ вміститься два-три сервіси, але доведеться стежити за місцем: дивіться місце на диску.

Поширені помилки

  • Ви змішали docker.io і docker-ce. Спершу sudo apt remove docker.io docker-compose, потім встановлення з офіційного репозиторію.
  • Docker відкрив порт в обхід фаєрвола. Docker пише власні правила iptables, і ufw їх не бачить. Публікуйте порт на локальному інтерфейсі — -p 127.0.0.1:8080:80 — якщо вам не потрібно виставляти його назовні. Докладніше в Мережі Docker.
  • Ви забули --now у systemctl на AlmaLinux. Сервіс увімкнено, але не запущено; він запрацює після перезавантаження, але не зараз.

Далі: Docker Compose і томи.