Docker/Podman Composer
docker run und podman run in eine Compose-Datei umwandeln und zurück in ein Startskript — rein im Browser. Der Einstieg zu Manual, Beispielen und Tipps.
Vom langen Run-Befehl zur Compose-Datei — und zurück
Der Docker/Podman Composer übersetzt zwischen zwei Schreibweisen für dieselben Container: dem einzeiligen (oft sehr langen) docker run- bzw. podman run-Befehl und der strukturierten Compose-Datei (compose.yaml). Und zwar in beide Richtungen — du gibst einen oder mehrere Run-Befehle ein und bekommst die passende Compose-YAML samt Netzen und Volumes, oder du fügst eine Compose-Datei ein und erhältst ein fertiges Startskript mit einem Run-Befehl je Service.
Das löst ein alltägliches Ärgernis: Ein docker run mit einem Dutzend Flags ist schwer zu lesen, schwer zu versionieren und schwer wartbar. Eine Compose-Datei ist nichts davon. Umgekehrt findest du in vielen Dokumentationen, Issues und Tutorials einen run-Einzeiler, willst ihn aber in dein bestehendes docker-compose.yml einsortieren. Der Composer nimmt dir das Abtippen und Nachschlagen ab.
Gedacht ist das Tool für alle, die mit Containern arbeiten: Entwicklerinnen und Entwickler, die einen aus einem Tutorial kopierten Run-Befehl in ihr Compose-Setup überführen wollen; DevOps- und Ops-Leute, die ad-hoc gestartete Container nachträglich als Compose-Service dokumentieren; und alle, die schnell die run-Entsprechung eines Compose-Services brauchen, um einen einzelnen Container von Hand zu testen.
Was das Tool kann — auf einen Blick
Die Oberfläche ist auf Englisch und in drei Tabs gegliedert. Umgewandelt wird live, während du tippst — einen Konvertieren-Knopf brauchst du nicht.
- Run → Compose — Eingabe eines oder mehrerer
docker run/podman run-Befehle, auch mitdocker network createunddocker volume create. Jederrunwird zum Service; Netze und benannte Volumes deklariert das Tool auf oberster Ebene, damit die Datei gültig ist. Der Tokenizer versteht Shell-Quoting,\-Zeilenumbrüche, Flag-Bündel wie-dp 80:80und--mount. Die YAML-Ausgabe ist editierbar (Badge „editable") und lässt sich kopieren oder alscompose.yamlherunterladen. - Compose → Run — Eingabe einer Compose-Datei, Ausgabe als Shell-Skript: zuerst die Netze (nur angelegt, wenn sie fehlen), dann je Service ein
runindepends_on-Reihenfolge, beibuild:mit vorangestelltemdocker build. Per Radio-Schalter wählst du docker oder podman; kopieren oder alsrun.shherunterladen. - Reference (Referenz) — eine eingebaute Tabelle „Flag Reference: docker run → Compose", eine Liste der Compose-only-Features, eine Übersicht der Restart-Policies und ein paar Tipps. Ein Nachschlagewerk direkt im Tool.
Über den Tabs liegt das optionale Feld Compose project name: Compose benennt Netze, Volumes und Container nach dem Projekt (myapp_default, myapp-web-1). Run → Compose schreibt ihn als name: in die Datei, Compose → Run bildet mit ihm im Skript genau die Namen nach, die Compose vergeben würde. Ein Dollarzeichen bleibt dabei, was es war — $HOME bleibt Variable, ein wörtliches '$5' wird in Compose zu $$5 und im Skript wieder zu '$5'.
Alle Editoren basieren auf dem ACE-Editor mit Syntax-Hervorhebung für Shell und YAML. Zu jedem Eingabefeld gehört ein Example-Knopf (lädt ein Beispiel) und ein Clear-Knopf (leert das Feld). Was sich nicht übersetzen ließ, listet das Tool unter der Ausgabe auf — Fehler rot, Warnungen gelb.
Rein clientseitig — nichts verlässt deinen Browser
Wichtig für Datenschutz und Verständnis: Der Composer rechnet vollständig in deinem Browser. Die gesamte Konvertierungslogik — Tokenizer für die Kommandozeile, Flag-Parser, YAML-Serialisierer und der YAML-Parser für die Gegenrichtung — läuft als JavaScript lokal. Es gibt keinen Server-Abruf, keine API und keinen Upload: Weder dein Run-Befehl noch deine Compose-Datei werden irgendwohin gesendet. Du kannst das Tool also bedenkenlos mit Befehlen nutzen, die Passwörter, Tokens oder interne Hostnamen enthalten. Auch die Downloads compose.yaml und run.sh entstehen lokal als Datei-Blob. Im localStorage deines Browsers merkt sich das Tool nur den Projektnamen und die Runtime-Wahl, nicht deine Eingaben.
Jetzt ausprobieren
→ Docker/Podman Composer öffnen — Run-Befehle oder Compose-YAML einfügen, Ergebnis kopieren oder herunterladen. Ohne Account, kostenlos, direkt im Browser. Wenn du erst sehen willst, wie das aussieht, lädt der Example-Knopf in jedem Tab ein fertiges Beispiel: im Run-Tab ein gemeinsames Netz mit einem nginx-Webserver und einer Node-App, im Compose-Tab ein Projekt mit build, depends_on, zwei Netzen und Ressourcenlimits.
Verwandte JPKCom-Tools
- Docker-Cheat-Sheet — die wichtigsten
docker-Befehle und Flags zum Nachschlagen, wenn du einen Run-Befehl von Hand baust. - Docker-Compose-Cheat-Sheet — Aufbau und Befehle von
docker compose, ideal als Begleiter für die erzeugte YAML. - Podman-Cheat-Sheet — die
podman-Entsprechungen, falls du die Befehle für Podman erzeugst. - Cron-Generator — Crontab-Zeilen bauen, etwa um einen wiederkehrenden Container-Job zu planen.
Tiefer geht es auf den Unterseiten: das Manual mit beiden Konvertierungsrichtungen, allen unterstützten Flags und dem Aufbau des Startskripts, Beispiele aus der Praxis und gesammelte Tipps & Tricks.