Як встановити Docker на Ubuntu 22.04, 24.04 і 26.04

Docker пакує застосунок разом із його залежностями в контейнер, який однаково запускається на будь-якому сервері. Нижче — встановлення актуальної версії на Ubuntu з офіційного репозиторію Docker і налаштування, які варто зробити одразу.
Чому не пакет із репозиторію Ubuntu
В Ubuntu є власний пакет docker.io, але він оновлюється із затримкою. Офіційний репозиторій Docker дає свіжу версію рушія та плагіни Compose і Buildx.
Крок 1. Видаліть старі пакети
sudo apt remove docker.io docker-doc docker-compose podman-docker containerd runc
Якщо пакети не встановлено, команда просто повідомить про це.
Крок 2. Підключіть репозиторій Docker
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/ubuntu/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/ubuntu $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
Крок 3. Встановіть Docker
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Служба запускається автоматично й увімкнена в автозавантаження. Перевірте:
sudo systemctl status docker
sudo docker run --rm hello-world
Крок 4. Робота без sudo
sudo usermod -aG docker $USER
Увійдіть у систему заново. Пам’ятайте: користувач із групи docker фактично має права root.
Крок 5. Обмежте розмір логів
Типово журнали контейнерів ростуть без обмежень і з часом заповнюють диск. Створіть файл /etc/docker/daemon.json:
{
"log-driver": "json-file",
"log-opts": {
"max-size": "10m",
"max-file": "3"
}
}
Перезапустіть службу:
sudo systemctl restart docker
Налаштування діє на контейнери, створені після перезапуску.
Основні команди
| Команда | Що робить |
|---|---|
docker ps |
список запущених контейнерів (-a — усіх) |
docker images |
список завантажених образів |
docker run -d --name web -p 8080:80 nginx |
запустити контейнер у фоні |
docker logs -f web |
журнал контейнера в реальному часі |
docker exec -it web sh |
відкрити командний рядок усередині контейнера |
docker stop web / docker start web |
зупинити й запустити |
docker rm web |
видалити контейнер |
docker compose up -d |
запустити сервіси з docker-compose.yml |
Docker і файрвол
Docker сам керує правилами мережевого фільтра, тому порт, опублікований через -p 8080:80, доступний з інтернету, навіть якщо UFW його не дозволяє. Щоб сервіс був доступний лише локально, публікуйте порт на локальній адресі:
docker run -d -p 127.0.0.1:8080:80 nginx
Очищення диска
Подивитися, скільки місця займає Docker:
docker system df
Видалити зупинені контейнери, невикористовувані мережі та образи без тегів:
docker system prune
З ключем -a видаляються всі образи, які не використовуються контейнерами, з --volumes — ще й невикористовувані томи. З томами будьте обережні: у них зберігаються дані.
Оновлення та видалення
Docker оновлюється разом із системою:
sudo apt update && sudo apt upgrade
Повне видалення разом з образами, контейнерами й томами:
sudo apt purge docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo rm -rf /var/lib/docker /var/lib/containerd
Що далі
- Portainer — вебінтерфейс для керування контейнерами.
- Dozzle — перегляд логів у браузері.
- Watchtower — автоматичне оновлення контейнерів.
Відеоінструкція



