Docker Compose — це інструмент, який дозволяє визначати та запускати багатоконтейнерні Docker‑додатки. За допомогою Docker Compose ви можете використати YAML‑файл для налаштування сервісів, мереж і томів вашого додатку, що дає можливість запускати кілька взаємопов’язаних контейнерів як єдину систему.
Docker Compose був представлений у 2014 році як спосіб спростити управління багатоконтейнерними Docker‑додатками. З того часу він став популярним інструментом у екосистемі Docker, забезпечуючи простий і ефективний спосіб оркестрації контейнерів.
Як працює Docker Compose
Docker Compose працює, читаючи YAML‑файл, який описує сервіси, мережі та томи додатку. Кожен сервіс визначається як контейнер, а YAML‑файл вказує, як ці контейнери мають бути налаштовані та як вони будуть взаємодіяти між собою.
Коли ви запускаєте Docker Compose, створюється мережа для додатку, і запускаються контейнери, визначені у YAML‑файлі. Контейнери стартують у порядку, зазначеному у файлі, і кожен з них отримує власний набір змінних оточення, конфігураційних файлів та інших ресурсів.
Після запуску контейнерів Docker Compose надає набір команд для керування додатком, таких як запуск і зупинка контейнерів, масштабування сервісів та перегляд журналів.
Використання Docker Compose
Щоб скористатися Docker Compose, спочатку потрібно створити YAML‑файл, який описує ваш додаток. Ось приклад простого Docker Compose YAML‑файлу:
version: '3'
services:
web:
image: nginx
ports:
- "8000:80"
db:
image: postgres
environment:
POSTGRES_PASSWORD: example
У цьому прикладі ми маємо два сервіси: web і db. Сервіс web використовує образ nginx і відкриває порт 8000 для хоста. Сервіс db використовує образ postgres і задає змінну оточення POSTGRES_PASSWORD.
Щоб запустити додаток, виконайте наступну команду:
docker-compose up
Ця команда зчитає YAML‑файл і запустить контейнери, зазначені у ньому. Після цього ви можете отримати доступ до веб‑сервісу, відкривши браузер і перейшовши за адресою http://localhost:8000.
Висновок
Docker Compose — потужний інструмент для управління багатоконтейнерними Docker‑додатками. За допомогою Docker Compose ви можете визначити ваш додаток як набір взаємопов’язаних контейнерів, що спрощує його адміністрування та масштабування. Використовуючи простий YAML‑файл для налаштування, Docker Compose дозволяє легко створювати, запускати та керувати складними контейнерними рішеннями.