Исследовательский дневник · Berserker Lab · Заметки Европа · Весна 2026 · Связаться
Berserker Lab Материалы и обзоры

Docker-Compose для новичков: Поднимаем веб-сервер и базу данных за 5 минут

Разбор конфигурации docker-compose.yml для развертывания связки Nginx, PHP и PostgreSQL.

Дмитрий Петров
Дмитрий Петров Автор материала · 10 мин
Docker-Compose для новичков: Поднимаем веб-сервер и базу данных за 5 минут
Выше — Структура каталогов проекта с файлом конфигурации docker-compose.yml.

Контейнеризация совершила революцию в развертывании программного обеспечения. Инструмент Docker Compose позволяет описывать сложные многоконтейнерные приложения в одном текстовом файле формата YAML и запускать их одной простой командой.

Конфигурационный файл состоит из нескольких секций. В секции `services` описываются запускаемые контейнеры: например, веб-сервер Nginx, интерпретатор PHP и база данных PostgreSQL. Для каждого сервиса указывается используемый образ (image) из репозитория Docker Hub, порты для проброса, переменные окружения и правила перезапуска.

Глубокий анализ темы позволяет выявить неочевидные закономерности и получить ценный практический опыт.

Анатомия файла docker-compose.yml

Критически важным аспектом является секция `volumes` (тома). По умолчанию данные внутри контейнера эфемерны и стираются при его остановке или обновлении. Тома позволяют связать папки внутри контейнера с физическими папками на жестком диске сервера, обеспечивая постоянное хранение данных базы данных и конфигурационных файлов.

Использование Docker Compose упрощает перенос всей инфраструктуры на другой сервер: достаточно скопировать YAML-файл и папки с томами, после чего выполнить команду `docker compose up -d` на новой машине для быстрого запуска сервисов.