Перейти к содержимому
ToolMug

Docker Compose в docker run

Вставьте compose.yaml или docker-compose.yml и получите эквивалентную команду docker run для каждого сервиса — удобно запускать контейнер на машине без Compose или проверять точный способ запуска.

Работает в браузере — введённые данные никуда не загружаются

Docker Compose → docker run
Docker Compose
docker run

Как пользоваться

  1. Вставьте файл Compose слева или нажмите «Загрузить пример».
  2. Справа появится команда docker run для каждого сервиса в порядке файла.
  3. Проверьте жёлтую заметку о непреобразованных полях, например build, deploy или depends_on, затем скопируйте команды.

Описание параметров

Поддерживаемые поля
image, container_name, command, entrypoint, ports, volumes в коротком и полном синтаксисе, environment, env_file, networks, network_mode, restart, user, working_dir, labels, logging, ulimits, healthcheck, лимиты ресурсов и другие.
Непреобразованные поля
Поля только Compose, такие как build, deploy, depends_on, secrets и configs, перечислены в заметке. Сервис без image получает имя-заполнитель; сначала соберите образ самостоятельно.
Несколько сетей
docker run может подключиться только к одной сети через --network; остальные подключите позже командой docker network connect.

Пример

Такой сервис:

services:
  web:
    image: nginx:1.27
    ports:
      - "8080:80"
    volumes:
      - ./html:/usr/share/nginx/html:ro
      - data:/var/cache/nginx
    environment:
      TZ: UTC
    restart: unless-stopped
    depends_on: [db]

превращается в:

docker run -d \
  --name web \
  -p 8080:80 \
  -v ./html:/usr/share/nginx/html:ro \
  -v data:/var/cache/nginx \
  -e TZ=UTC \
  --restart unless-stopped \
  nginx:1.27

У depends_on нет эквивалента в docker run, поэтому он указан в примечании. Службы, на которые он ссылается, запускайте самостоятельно и в правильном порядке. Относительный путь ./html разрешается относительно каталога, из которого вы запускаете команду, поэтому запускайте её из папки, где лежит этот каталог.

Часто задаваемые вопросы

Почему каждая команда содержит -d?

Обычно Compose запускает сервисы в фоне командой docker compose up -d, поэтому здесь используется тот же режим. Уберите -d, чтобы увидеть вывод в терминале.

Нужно ли заранее создавать именованные тома и сети?

docker run автоматически создаёт отсутствующие именованные тома, но пользовательские сети нужно создать заранее командой docker network create <name>.

Мой файл загружается?

Нет. Разбор и преобразование выполняются в браузере.

Конфиденциальность

Этот инструмент работает полностью в браузере. Ваши файлы и текст обрабатываются на вашем устройстве и никогда не загружаются на наши серверы.

Похожие инструменты