Sobes.tech
Back to questions
Junior — Middle
62

Можете объяснить, как организована структура файла Docker Compose?

Answer from AI

sobes.tech AI

Файл Docker Compose — это YAML-файл, который описывает конфигурацию многоконтейнерного Docker-приложения. В нем определяются сервисы, сети и тома, необходимые для работы приложения.

Основные разделы файла:

  • version: версия синтаксиса Docker Compose.
  • services: описание контейнеров, которые нужно запустить. Для каждого сервиса указываются образ (image) или инструкция сборки (build), порты, переменные окружения, тома и другие параметры.
  • volumes: описание томов для хранения данных вне контейнеров.
  • networks: настройка сетей для взаимодействия контейнеров.

Пример простого docker-compose.yml:

version: '3.8'
services:
  web:
    build: ./web
    ports:
      - "8000:8000"
    volumes:
      - ./web:/app
    environment:
      - DEBUG=1
  db:
    image: postgres:13
    volumes:
      - db-data:/var/lib/postgresql/data
    environment:
      - POSTGRES_PASSWORD=example
volumes:
  db-data:

Этот файл описывает два сервиса: web (собирается из локальной папки) и db (использует официальный образ Postgres). Также определён том db-data для хранения данных базы.