Перейти к содержимому
Aback Tools Logo

Конвертер Docker Run в Compose

Преобразуйте команды docker run в блоки сервиса docker-compose.yml онлайн и бесплатно. Наш конвертер docker run в Compose поддерживает -p, -v, -e, --env-file, --network, --restart, --name и все распространённые флаги Docker: именованные тома и пользовательские сети автоматически добавляются в секции верхнего уровня. Без регистрации: вся конвертация выполняется локально в браузере.

Docker Run to Compose Converter

Paste a docker run command and click Convert. The converter parses all common Docker flags and generates an equivalent docker-compose.yml service block. All conversion runs locally in your browser - nothing is sent to any server.

Quick examples:

Почему стоит использовать наш конвертер Docker Run в Compose?

  • Мгновенная конвертация docker run в Compose: Преобразуйте любую команду docker run в блок сервиса docker-compose.yml мгновенно. Вставьте команду и получите чистый, готовый к продакшену YAML Compose за миллисекунды — без ожидания и шагов сборки.
  • Безопасный онлайн-конвертер Docker Run в Compose: Вся конвертация выполняется локально в браузере — команды, переменные окружения и секреты не покидают устройство. Пользуйтесь конвертером онлайн с полной приватностью.
  • Docker Run в Compose — без установки: Конвертируйте docker run в docker-compose.yml прямо в любом браузере без Docker, Node.js и CLI-инструментов. Работает на любом устройстве и где угодно — просто вставьте и конвертируйте.
  • Полная поддержка флагов Docker: Наш конвертер поддерживает все распространённые флаги docker run: -p (порты), -v (тома), -e (окружение), --env-file, --network, --restart, --name, --entrypoint, --cap-add, --memory, --healthcheck и многие другие.

Типичные сценарии использования конвертера Docker Run в Compose

  • Переход с docker run на Compose: Переводите существующие docker run-скрипты и shell-команды в файлы docker-compose.yml. Наш конвертер обрабатывает все флаги автоматически, чтобы вы могли перейти на Docker Compose без ручного переписывания команд.
  • Настройка CI/CD-пайплайнов: Преобразуйте команды docker run из CI-скриптов в определения сервисов Compose для соответствия локальной среде. Обеспечьте совпадение локальной среды с пайплайном одним «вставить и конвертировать».
  • Оркестрация многосервисных приложений: Преобразуйте отдельные команды docker run для каждого сервиса (web, база данных, кэш, очередь) в блоки сервиса Compose, а затем объедините их в один docker-compose.yml для удобной оркестрации.
  • Документация и онбординг: Преобразуйте примеры docker run из README и документации API в формат Compose для онбординга команды. Новые разработчики смогут запускать docker compose up вместо запоминания длинных команд docker run.
  • Переход к инфраструктуре как коду: Переносите унаследованные docker run-скрипты в декларативные файлы docker-compose.yml в рамках инициативы IaC. Файлы Compose версионируются, проходят ревью и воспроизводятся в разных средах.
  • Изучение Docker Compose: Разберитесь, как флаги docker run соответствуют ключам YAML Compose. Посмотрите, как именно -p превращается в ports, -v в volumes, -e в environment, а --restart в restart — практичный способ изучить синтаксис Docker Compose.

Что такое конвертер Docker Run в Compose?

docker run — это CLI-команда для запуска одного контейнера Docker, вся конфигурация которого задаётся флагами. Она удобна для быстрых тестов, но длинные команды docker run трудно читать, передавать и воспроизводить. Docker Compose решает это, позволяя описать конфигурацию контейнера в декларативном файле docker-compose.yml, который можно версионировать и передавать команде. Наш конвертер docker run в Compose закрывает этот разрыв: вставьте любую команду docker run и мгновенно получите эквивалентный блок сервиса docker-compose.yml. Это особенно полезно при переходе от разового управления контейнерами к полноценному процессу на базе Compose.

Как работает наш конвертер Docker Run в Compose

  1. 1. Вставьте команду docker run: Скопируйте любую команду docker run — из документации, shell-скрипта или истории терминала — и вставьте её в поле ввода. Многострочные команды с продолжением строки обратной косой чертой ( \ ) поддерживаются автоматически.
  2. 2. Нажмите «Конвертировать в Compose»: Нажмите кнопку «Конвертировать». Конвертер разберёт все флаги docker run и сгенерирует чистый, правильно отформатированный блок сервиса docker-compose.yml. Именованные тома и пользовательские сети автоматически добавляются в секции верхнего уровня volumes: и networks:.
  3. 3. Скопируйте или скачайте: Скопируйте сгенерированный YAML в буфер обмена или скачайте его как docker-compose.yml для немедленного использования в проекте.

Что именно конвертируется

  • Образ и имя контейнера: Имя и тег образа соответствуют image: . Флаг --name соответствует container_name: и одновременно используется как имя сервиса Compose.
  • Сопоставления портов: Каждый флаг -p хост:контейнер соответствует элементу списка ports: . Диапазоны портов и суффиксы протокола (например, :udp ) сохраняются как есть.
  • Тома: Каждый флаг -v соответствует элементу списка volumes: . Именованные тома (без начального / или . ) автоматически добавляются в секцию volumes: верхнего уровня.
  • Переменные окружения: Каждый флаг -e КЛЮЧ=ЗНАЧЕНИЕ соответствует элементу environment: . Флаг --env-file соответствует env_file: .
  • Политика перезапуска: Флаг --restart соответствует restart: . Форма on-failure:N дополнительно создаёт блок deploy.restart_policy с max_attempts .
  • Сети: Пользовательские значения --network соответствуют списку networks: и добавляются в секцию networks: верхнего уровня как внешние сети.

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

Конвертер docker run в Compose переводит CLI-команду docker run в эквивалентный блок сервиса docker-compose.yml. docker run использует флаги вроде -p, -v, -e и --restart для настройки контейнеров в терминале. Наш конвертер разбирает эти флаги и генерирует эквивалентный YAML, который можно сразу использовать с docker compose up.

Конвертер поддерживает все распространённые флаги docker run: --name (container_name), -p (ports), -v (volumes), -e / --env (environment), --env-file (env_file), --network (networks), --restart (restart), -l / --label (labels), --entrypoint, -w / --workdir, -u / --user, -h / --hostname, --privileged, --read-only, -t / --tty, -i / --interactive, --cap-add, --cap-drop, --device, --dns, --add-host, --shm-size, -m / --memory, --cpu-shares, --health-cmd, --log-driver, --log-opt, --security-opt, --ulimit и --tmpfs.

Вставьте многострочную команду docker run как есть — конвертер автоматически обрабатывает продолжение строки через обратную косую черту (\). Строки, заканчивающиеся на \, объединяются перед разбором, поэтому команды можно вставлять прямо из shell-скриптов или документации без ручного редактирования.

Да. Конвертер распознаёт именованные тома (монтирования, не начинающиеся с / или .) и автоматически добавляет их в секцию volumes: верхнего уровня сгенерированного docker-compose.yml. Bind-монтирования (пути, начинающиеся с / или .) добавляются только в список volumes: сервиса.

Пользовательские имена сетей (кроме bridge, host и none) добавляются в список networks: сервиса, а также в секцию networks: верхнего уровня как сети с external: true. Предполагается, что сеть уже существует. Если вы хотите, чтобы Compose создал сеть, удалите строку external: true из сгенерированного вывода.

Политика перезапуска on-failure:N преобразуется в restart: on-failure и дополнительно создаёт блок deploy.restart_policy с condition: on-failure и max_attempts: N. Так число попыток сохраняется в выводе Compose.

Абсолютно. Вся конвертация docker run в Compose выполняется полностью в браузере средствами JavaScript. Ваши команды, переменные окружения, секреты и пути томов никогда не отправляются на сервер. Всё работает локально на устройстве, что гарантирует полную приватность.

Флаг --mount отмечается в выводе комментарием, поскольку его синтаксис сложнее, чем у -v, и требует ручного преобразования в длинный синтаксис volumes: Compose. Конвертер добавляет поясняющий комментарий, чтобы вы знали, что это нужно обработать вручную.

Да! Наш конвертер docker run в Compose абсолютно бесплатен: без регистрации, рекламы и ограничений на использование. Конвертируйте команды docker run в docker-compose.yml сколько нужно — полностью бесплатно и навсегда.