dmosk / doconv

docker run → Compose и Kubernetes

Вставьте docker run … — получите Compose YAML и фрагмент Deployment. Флаги без прямого соответствия попадут в предупреждения. Всё в браузере: без API, без Helm и kustomize. Рядом полезны yamaster и k8size.

Вставьте команду docker run, чтобы получить Compose YAML и фрагмент Deployment. Флаги без прямого соответствия попадут в предупреждения — это отправная точка, не гарантия 100% эквивалентности.

Зачем нужен doconv

  • docker run → Compose. Получите готовый YAML сервиса Compose из привычной однострочной команды.
  • Фрагмент Deployment. Рядом — стартовый манифест Kubernetes Deployment (не Helm и не kustomize).
  • Предупреждения по флагам. Если опция не переносится 1:1, сервис явно об этом скажет.
  • Только в браузере. Без API: команда не уходит на сервер.
  • Шаринг по хэшу. По желанию скопируйте ссылку с командой в URL hash.

Как конвертировать docker run

  1. Вставьте команду docker run … или нажмите «Пример».
  2. Нажмите «Конвертировать» — появятся Compose YAML и фрагмент Deployment.
  3. Прочитайте список предупреждений: что не перенеслось один в один.
  4. Скопируйте нужный YAML или поделитесь ссылкой с хэшем.

Флаги, Compose и Deployment

Не каждый флаг docker run имеет прямой аналог в Compose или Kubernetes. doconv делает честный старт: переносит то, что умеет, и предупреждает об остальном — без обещания 100% эквивалентности.

Рекомендации:

  • Проверяйте порты, тома и сеть после конвертации.
  • --privileged, --network host и device часто требуют ручной доработки.
  • -it, -d и --rm относятся к жизненному циклу CLI и обычно опускаются.
  • Это не генератор Helm-чартов и не kustomize.
  • Для YAML-правок рядом удобен yamaster; для units — k8size.

Для чего нужен сервис

  • быстро набросать compose.yml из однострочного docker run;
  • получить черновик Deployment для миграции в кластер;
  • увидеть, какие флаги не мапятся 1:1;
  • поделиться командой через URL hash;
  • обучить команду разнице между run, Compose и k8s.

Частые вопросы

Это 100% эквивалент docker run?

Нет. Это стартовая конвертация с предупреждениями по несопоставленным флагам.

Генерируется ли Helm или kustomize?

Нет. Только Compose YAML и фрагмент Deployment.

Уходит ли команда на сервер?

Нет. Всё считается в браузере, без API.

Как поделиться результатом?

Кнопка «Ссылка» копирует URL с командой в hash (по желанию).

Что делать с предупреждениями?

Прочитайте текст: обычно нужно вручную донастроить сеть, тома, capabilities или порты.