- Home »

Установка и использование Docker на Rocky Linux 9
В этой статье разберёмся, как установить и использовать Docker на Rocky Linux 9 — одном из самых популярных дистрибутивов для серверов, который быстро набирает обороты после ухода CentOS. Если ты когда-нибудь сталкивался с болью ручной настройки окружения, зависимостями, конфликтами пакетов и вечными «а почему у меня не работает, а у тебя работает» — Docker станет твоим спасением. Здесь ты найдёшь не только пошаговую установку, но и реальные кейсы, советы, лайфхаки и даже пару нестандартных сценариев. Всё — на практике, без воды и маркетинговых лозунгов. Погнали!
Как это работает? Простыми словами о Docker и Rocky Linux 9
Docker — это не просто модное слово, а реальный инструмент, который позволяет запускать приложения в изолированных контейнерах. Каждый контейнер — это мини-окружение с собственными зависимостями, библиотеками и даже файловой системой. Ты можешь собрать приложение на своём ноуте, а потом запустить его на сервере — и оно будет работать одинаково.
- Rocky Linux 9 — это клон RHEL, который идеально подходит для серверных задач. Современный, стабильный, поддерживаемый сообществом.
- Docker — твой универсальный «контейнерный движок», который позволяет запускать любые приложения, не боясь конфликтов версий и зависимостей.
Вместо того чтобы мучиться с настройкой окружения для каждого проекта, ты просто запускаешь контейнер — и всё работает. Это особенно актуально для серверов, где важна стабильность и предсказуемость.
Как быстро и просто всё настроить?
Переходим к самому вкусному — быстрой установке Docker на Rocky Linux 9. Всё делается буквально за 10 минут, даже если ты только вчера узнал о Linux.
- Обнови систему:
sudo dnf update -y
- Установи необходимые пакеты для работы с репозиториями:
sudo dnf install -y yum-utils device-mapper-persistent-data lvm2
- Добавь официальный репозиторий Docker:
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
- Установи Docker Engine и Docker CLI:
sudo dnf install -y docker-ce docker-ce-cli containerd.io
- Запусти и добавь Docker в автозагрузку:
sudo systemctl start docker
sudo systemctl enable docker
- Проверь, что всё работает:
sudo docker run hello-world
Если увидел сообщение «Hello from Docker!», значит, всё окей. Можно идти дальше.
Практические советы, схемы и примеры
Теперь — к реальным сценариям. Вот несколько кейсов, которые встречаются чаще всего:
Кейс | Плюсы | Минусы | Рекомендации |
---|---|---|---|
Запуск веб-приложения (например, Nginx, Apache, Node.js) | Быстрое развертывание, изоляция, простое масштабирование | Потребление ресурсов, нужно следить за обновлениями образов | Используй официальные образы, автоматизируй обновления через CI/CD |
Тестирование новых версий ПО | Безопасно, не ломает основную систему | Может быть сложно с сетевыми настройками | Используй docker-compose для сложных сценариев |
Организация dev-окружения для команды | Все работают в одинаковых условиях, меньше «у меня не работает» | Порог входа для новичков | Пиши подробные README и Dockerfile, делай свои образы |
Хостинг микросервисов | Изоляция, быстрое масштабирование, удобство деплоя | Мониторинг и логирование требуют отдельной настройки | Интегрируй с Prometheus, Grafana, ELK |
Docker Compose: когда одного контейнера мало
Если у тебя не просто сайт на PHP, а целый зоопарк сервисов (база, кеш, бекенд, фронт), то без Docker Compose не обойтись. Это утилита, которая позволяет описать всю инфраструктуру в одном YAML-файле и запускать её одной командой.
sudo dnf install -y python3-pip
sudo pip3 install docker-compose
Пример простого docker-compose.yml
для связки Nginx + PHP-FPM:
version: '3'
services:
nginx:
image: nginx:latest
ports:
- "80:80"
volumes:
- ./nginx.conf:/etc/nginx/nginx.conf
- ./www:/var/www/html
depends_on:
- php
php:
image: php:8.1-fpm
volumes:
- ./www:/var/www/html
Запуск:
docker-compose up -d
Похожие решения и альтернативы
- Podman — альтернатива Docker, тоже работает с контейнерами, но без демона. Поддерживается Red Hat, можно запускать контейнеры без root. Подробнее: podman.io
- LXC/LXD — более низкоуровневые контейнеры, ближе к виртуализации, но сложнее в настройке.
- systemd-nspawn — для любителей systemd и экспериментов.
Но если тебе нужен быстрый старт, поддержка сообщества и куча готовых образов — Docker вне конкуренции.
Статистика и сравнение с другими решениями
Платформа | Производительность | Простота | Сообщество | Гибкость |
---|---|---|---|---|
Docker | Высокая | Очень прост | Огромное | Высокая |
Podman | Высокая | Похоже на Docker | Растёт | Высокая |
LXC/LXD | Очень высокая | Сложнее | Меньше | Очень высокая |
Виртуальные машины (KVM, VirtualBox) | Средняя | Сложно | Большое | Максимальная |
По данным Datadog, более 80% компаний, использующих контейнеры, выбирают Docker. Это не просто хайп — это реально удобно.
Интересные факты и нестандартные сценарии
- Можно запускать не только сервисы, но и десктопные приложения в контейнерах (например, Firefox или GIMP через X11 forwarding).
- Docker отлично подходит для CI/CD — сборка, тестирование и деплой в одном флаконе.
- Можно использовать Docker для автоматизации бэкапов — контейнер с cron и скриптами, который делает бэкапы и складывает их в облако.
- С помощью Docker можно разворачивать Minecraft-серверы или другие игровые сервисы для друзей — быстро, изолированно, без лишних танцев с бубном.
- Контейнеры можно запускать на VPS или выделенных серверах — это даёт гибкость и масштабируемость.
Новые возможности: автоматизация и скрипты
Docker открывает двери для автоматизации. Вот что можно делать:
- Писать скрипты для автоматического обновления контейнеров (например, через
watchtower
). - Организовать zero-downtime деплой — обновляешь контейнер, старый выключается, новый стартует без потери трафика.
- Интегрировать с Ansible, Terraform, Jenkins — инфраструктура как код, деплой как искусство.
- Собирать свои образы с нужными пакетами и выкладывать их в приватный реестр.
Пример автоматизации обновления контейнеров:
docker run -d \
--name watchtower \
-v /var/run/docker.sock:/var/run/docker.sock \
containrrr/watchtower
Выводы и рекомендации
Docker на Rocky Linux 9 — это must-have для любого, кто хочет быстро, удобно и безопасно запускать приложения на сервере. Ты получаешь:
- Изоляцию сервисов и окружений
- Лёгкость масштабирования и обновления
- Мощные инструменты автоматизации
- Огромное сообщество и тысячи готовых образов
Используй Docker для разработки, тестирования, продакшена — на VPS или выделенном сервере. Не бойся экспериментировать: контейнеры легко удалять, пересобирать и обновлять. А если что-то пошло не так — всегда можно откатиться к рабочей версии.
Если хочешь углубиться — читай официальную документацию: docs.docker.com/engine/install/rockylinux/. А если нужна помощь с выбором сервера — смотри VPS и выделенные сервера на этом блоге.
Контейнеры — это не только про DevOps, это про свободу и контроль над своим сервером. Пробуй, автоматизируй, экономь время и нервы!
В этой статье собрана информация и материалы из различных интернет-источников. Мы признаем и ценим работу всех оригинальных авторов, издателей и веб-сайтов. Несмотря на то, что были приложены все усилия для надлежащего указания исходного материала, любая непреднамеренная оплошность или упущение не являются нарушением авторских прав. Все упомянутые товарные знаки, логотипы и изображения являются собственностью соответствующих владельцев. Если вы считаете, что какой-либо контент, использованный в этой статье, нарушает ваши авторские права, немедленно свяжитесь с нами для рассмотрения и принятия оперативных мер.
Данная статья предназначена исключительно для ознакомительных и образовательных целей и не ущемляет права правообладателей. Если какой-либо материал, защищенный авторским правом, был использован без должного упоминания или с нарушением законов об авторском праве, это непреднамеренно, и мы исправим это незамедлительно после уведомления. Обратите внимание, что переиздание, распространение или воспроизведение части или всего содержимого в любой форме запрещено без письменного разрешения автора и владельца веб-сайта. Для получения разрешений или дополнительных запросов, пожалуйста, свяжитесь с нами.