Docker на Ubuntu 24.04 ставят по двум причинам. Первая — быстро поднять сервисы без ручной установки зависимостей. Вторая — чтобы потом переносить проект между серверами командой docker compose up -d, а не вспоминать, какие пакеты ты ставил полгода назад. Но если поставить Docker “как попало”, вылезают классические проблемы: нет compose, демона не видно, права сломаны, контейнеры не стартуют после ребута. Ниже вариант, который обычно встаёт с первого раза и дальше работает спокойно.
Подготовка системы и установка Docker Engine
На Ubuntu 24.04 самый надёжный быстрый путь — официальный скрипт. Он ставит Docker Engine и нужные компоненты без ручного добавления репозиториев.
sudo -i
apt update
apt install -y ca-certificates curl
curl -fsSL https://get.docker.com | sh
systemctl enable --now docker
docker --version
Если у тебя чистый сервер, этого уже достаточно, чтобы Docker заработал.
Docker Compose на Ubuntu 24.04
На новых версиях Ubuntu compose чаще идёт как плагин, а не как отдельный бинарник docker-compose. Проверь:
docker compose version
Если команда не найдена, поставь плагин:
sudo apt update
sudo apt install -y docker-compose-plugin
docker compose version
Чтобы не работать от root
Самый частый “затык” после установки — permission denied на /var/run/docker.sock. Это не баг Docker, просто ты запускаешь команды не от root. Добавь пользователя в группу docker и перелогинься.
sudo usermod -aG docker "$USER"
newgrp docker
docker ps
Если docker ps отрабатывает без sudo, значит права нормальные.
Проверка, что всё работает
Запусти тестовый контейнер. Это самый честный индикатор.
docker run --rm hello-world
Дальше проверь, что контейнеры могут стартовать в фоне и переживают перезагрузку. Быстрый тест на nginx:
docker run -d --name web -p 80:80 --restart unless-stopped nginx:stable
curl -I http://127.0.0.1
docker logs web --tail 30
Если curl возвращает HTTP/1.1 200 OK, значит порт проброшен и сеть работает. Удалить тест:
docker rm -f web
Частые ошибки и быстрые фиксы
Если видишь Cannot connect to the Docker daemon, значит демон не запущен или упал. Проверь и подними:
sudo systemctl status docker --no-pager
sudo systemctl restart docker
Если docker compose не работает, почти всегда не установлен плагин. Ставится одной командой выше.
Если контейнеры не доступны снаружи, проверь фаервол и что ты пробросил порт на нужный интерфейс. На сервере можно быстро посмотреть, слушает ли порт:
sudo ss -lntp | grep ':80' || true
Почему это удобно
Docker раскрывается, когда сервер быстрый и предсказуемый: контейнеры быстро стартуют, дисковая подсистема не душит базу, а обновления не превращаются в стресс. На xhost24 ты можешь поднять Ubuntu 24.04 за минуты и дальше разворачивать проекты через Docker Compose хоть каждый день. Если нужно, мы поможем не просто “поставить Docker”, а довести до рабочего продакшн-уровня: автозапуск, логирование, базовая безопасность, правильная структура compose под твой проект.
Оформите услугу на сайте xhost24.com, и мы поможем вам установить Docker на Ubuntu 24.04, настроить Compose и развернуть контейнеры так, чтобы они стабильно работали и переживали перезагрузки.
