Структура файла docker-compose.yml


env_file указывает путь к файлу с переменными, которые будут использоваться для работы контейнера. Чтобы не указывать все переменные, вы можете поместить их в один файл и сослаться на него. Вы можете передать как путь к отдельному файлу, так и список таких путей. По умолчанию это файл .env .

env_file:
  - ./a.env
  - ./b.env

environment определяет пары ключ: значение для переменных, которые нужны при работе контейнера. Вы можете использовать два разных синтаксиса - map и list.

environment:
  RACK_ENV: development
  SHOW: "true"
  USER_INPUT:

resources

resources настраивает ограничения физических ресурсов для контейнера, работающего на платформе. Эти ограничения могут быть настроены как:

services:
  frontend:
    image: example/webapp
    deploy:
      resources:
        limits:
          cpus: '0.50'
          memory: 50M
          pids: 1
        reservations:
          cpus: '0.25'
          memory: 20M

cpus

cpus настраивает ограничение или резервирование того, сколько доступных ресурсов ЦП (количество ядер) может использовать контейнер.

memory

memory настраивает ограничение или резервирование объема памяти, который может выделить контейнер, задается как строка, выражающая байтовое значение .

pids

pids настраивает лимит PID контейнера, задаваемый как целое число.