База знаний

Введение в Docker Compose

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 позволяет легко создавать, запускать и управлять сложными контейнерными решениями.