
Docker Compose und `.env`-Dateien online validieren
Prüfen Sie die Struktur von `compose.yml` und `.env` vor `docker compose up` — lokal im Browser validieren, ohne CLI-Tools.
Compose und `.env` vor dem Deployment validieren
Ein `docker compose up`, das an einem falsch eingerückten `services`-Schlüssel oder an einer `.env`-Zeile ohne `=` scheitert, kostet Zeit, sei es auf einer neuen Maschine, in der CI oder beim Einarbeiten. Eine schnelle Struktur-Prüfung vor dem Start des Stacks fängt offensichtliche Tippfehler ab, bevor Docker sich beschwert. Auf FastMinify können Sie eine Docker-Compose-Datei online validieren und eine `.env`-Datei online validieren, vollständig im Browser, ohne Docker- oder Node-Installation. Die ganze Werkzeugfamilie liegt im Hub DevOps-Werkzeuge, neben Terraform, Dockerfile und HCL.
Häufige Fehler und Ablauf vor dem Deployment
Einige Fehler tauchen ständig auf. Sie vor `docker compose up` zu korrigieren, vermeidet kryptische Docker-Meldungen.
Der Validator markiert Schlüssel, die wie Secrets aussehen (`PASSWORD`, `API_KEY`, `SECRET`, `TOKEN`), das ist aber nur eine Erinnerung und keine Suche nach Secrets. Die eigentliche Disziplin bleibt, `.env`-Dateien nicht in Git einzuchecken.
Compose und `.env` verfolgen zwei verschiedene Ziele
Compose und `.env` ergänzen sich: Das eine beschreibt den Stack, das andere liefert die Konfiguration. Bei der Prüfung validieren Sie beide, bevor Sie den Stack starten.
Was geprüft wird
Wann nutzen
Eine einfache Reihenfolge vermeidet, Fehler erst beim Deployment zu entdecken.
Wann das Browser-Werkzeug genügt
Sie brauchen kein installiertes Docker, um drei Fehler in einer per Nachricht erhaltenen `compose.yml` zu prüfen.
Grenzen des Browsers und was er nicht ersetzt
Docker-CLI und -Daemon bleiben Pflicht, sobald Sie die `${VAR}`-Interpolation auflösen, mehrere Compose-Dateien (`-f`) zusammenführen oder prüfen müssen, ob ein Image existiert.
Ein Service kommt oft mit Dockerfile, Terraform-HCL und `.env`. Compose und `.env` zu validieren, das Dockerfile zu linten und das HCL zu formatieren, deckt den täglichen DevOps-Weg ab.
CLI und Ökosystem
Die Docker-CLI und einige Linter bleiben der Standard. Die FastMinify-Werkzeuge ergänzen die Erkundung und einmalige Prüfungen.
docker compose config
Erzeugt die endgültige Datei mit aufgelösten Variablen und meldet Fehler gegen die Spezifikation.
Vorteile:
Nachteile:
dotenv-linter
Schneller `.env`-Linter (Rust) mit Regeln für Schlüssel und Werte.
Vorteile:
Nachteile:
yamllint
Generischer YAML-Linter, nützlich für Einrückung und Stil.
Vorteile:
Nachteile:
Anatomie einer `compose.yml` und einer `.env`
Eine moderne Compose-Datei ist ein einzelnes YAML-Dokument mit einem erforderlichen Top-Level-Schlüssel `services`. Jeder Service sollte ein `image` oder einen `build`-Block deklarieren. Weitere erwartete Top-Level-Schlüssel sind `networks`, `volumes`, `secrets`, `configs`, `name` und das historische `version`. Der Schlüssel `version` ist in der aktuellen Compose-Spec optional, wird aber weiterhin toleriert.
Eine `.env` ist eine Liste von `KEY=VALUE`-Paaren, eines pro Zeile. Leerzeilen und Kommentare (`#`) werden ignoriert, ein `export `-Präfix wird toleriert. Schlüsselnamen folgen der Shell-Konvention (Buchstaben, Ziffern, Unterstrich, nicht mit einer Ziffer beginnend). Ein Wert mit Leerzeichen sollte in Anführungszeichen stehen, um Überraschungen zu vermeiden.
Beide Validatoren führen strukturelle Prüfungen aus, keine vollständige Validierung der Compose-Spezifikation und keine Suche nach Secrets. Sie lösen keine Variablen-Interpolation (`${VAR}`) auf, prüfen nicht, ob ein Image in einer Registry existiert, und führen kein `docker compose up` aus. Wie es zur Laufzeit wirklich aussieht, zeigen weiterhin `docker compose config` und der Docker-Daemon.
Zwei Validierungen, Compose und `.env`
Der Validator liest das YAML ein und prüft, dass es ein einzelnes Dokument, eine Mapping-Wurzel und einen `services`-Schlüssel gibt. Er meldet Services ohne `image` oder `build` und unbekannte Schlüssel auf oberster Ebene. Probieren Sie den Online-Docker-Compose-Validator.
Der `.env`-Validator liest jede Zeile. Er meldet Zeilen ohne `=` oder mit illegalem Schlüssel und erkennt offene Anführungszeichen, doppelte Schlüssel und Werte mit Leerzeichen ohne Anführungszeichen. Nutzen Sie den Online-`.env`-Validator, bevor Sie eine Beispieldatei teilen.
Ein Service steht selten allein. Weiter geht es mit dem Online-Dockerfile-Linter und dem Online-Terraform-/HCL-Formatierer, um die gesamte Infrastrukturkonfiguration abzudecken.
Zusammenfassung
Wer die Struktur seiner `compose.yml` und `.env` vor `docker compose up` validiert, vermeidet Fehlschläge beim Deployment durch Tippfehler. Nutzen Sie den Browser als ersten Strukturfilter und danach `docker compose config` und den Docker-Daemon, um zu sehen, was zur Laufzeit wirklich passiert. Weiter geht es mit Dockerfile und Terraform-HCL im selben DevOps-Hub.
Validieren Sie jetzt Ihr Compose oder Ihre `.env`
Verwandte Artikel

HTTP/2 und HTTP/3 ändern den Weg der Dateien, nicht ihre Größe. Messungen zu Größe, Kompilierzeit und Bundling zeigen, was Minifizierung noch bringt.

Rechnen Sie eine Unix-Epoche in ein lesbares Datum um und zurück, unterscheiden Sie Sekunden und Millisekunden und meiden Sie Zeitzonen-, JWT- und Zeitumstellungsfallen.

Lesen Sie einen Cron-Ausdruck Feld für Feld, prüfen Sie die nächsten Ausführungen in UTC oder Ortszeit und meiden Sie Fallen bei Schritten und Zeitzonen.