Dieser Dockerfile-Formatter räumt dein Dockerfile auf und prüft es in einem Durchgang gegen Docker-Best-Practices. Füge ein Dockerfile ein, und es normalisiert jedes Anweisungsschlüsselwort auf Großbuchstaben, schneidet nachgestellten Leerraum ab und kollabiert wiederholte Leerzeilen, sodass die Datei konsistent lesbar ist. Als leichtgewichtiger Dockerfile-Linter markiert es auch häufige Probleme: ungepinnte Basis-Image-Tags, ADD wo COPY hingehört, apt-get-Installationen ohne --no-install-recommends, übrige apt-Caches, sudo-Nutzung, cd innerhalb von RUN, kombinierbare RUN-Layer und Container, die als root laufen. Es ist für Entwickler und DevOps-Ingenieure gebaut, die ein Dockerfile online formatieren und Image-Builds nach Dockerfile-Best-Practices vor dem Committen straffen wollen. Alles läuft lokal in deinem Browser, sodass das eingefügte Dockerfile auf deinem Rechner verarbeitet wird und deine Daten dein Gerät nie verlassen.
Funktionen
Schreibt jede Dockerfile-Anweisung groß (FROM, RUN, COPY, CMD und mehr) für konsistenten Stil
Schneidet nachgestellten Leerraum ab und kollabiert wiederholte Leerzeilen
Warnt, wenn ein Basis-Image :latest verwendet oder keinen gepinnten Tag hat
Schlägt COPY statt ADD für lokale Dateien vor
Empfiehlt --no-install-recommends und apt-Cache-Bereinigung, um Images zu verkleinern
Markiert sudo-Nutzung und Container, die ohne gesetztes USER als root laufen
Erkennt aufeinanderfolgende RUN-Schritte, die kombiniert werden können, um Layer zu reduzieren
Zeigt jeden Vorschlag mit einem WARN- oder TIP-Abzeichen und der Zeilennummer
So verwendest du Dockerfile-Formatierer
Füge dein Dockerfile in das Eingabefeld ein.
Lies die bereinigte, anweisungsgroßgeschriebene Ausgabe im Bereich Formatiertes Dockerfile.
Prüfe die Best-Practice-Checks unter der Ausgabe auf WARN- und TIP-Vorschläge.
Wende die gewünschten Fixes an und kopiere oder lade das Ergebnis dann als Dockerfile herunter.
Beispiel
Eingabe
from node:latest
run apt-get update && apt-get install curl
copy . .
cmd ["node","app.js"]
Ausgabe
FROM node:latest
RUN apt-get update && apt-get install curl
COPY . .
CMD ["node","app.js"]
Anweisungen werden großgeschrieben und aufgeräumt; das Check-Panel warnt weiterhin, den node-Tag zu pinnen, --no-install-recommends hinzuzufügen und ein Nicht-root-USER zu setzen.
Häufige Fehler & Fehlerbehebung
Die Ausgabe sieht identisch zu deiner Eingabe aus. — Der Formatter normalisiert nur Schreibweise, Leerraum und Leerzeilen. Wenn deine Anweisungen bereits groß und sauber waren, gibt es nichts zu ändern. Prüfe stattdessen das Best-Practice-Panel auf Vorschläge.
Lint markiert ADD, obwohl du eine URL herunterlädst oder ein Archiv extrahierst. — Die COPY-statt-ADD-Warnung wird für ADD mit http(s)-URLs und für .tar/.gz/.tgz/.bz2/.xz/.zip-Archive übersprungen. Für einfache lokale Dateien wechsle zu COPY, um die Warnung zu beseitigen.
Eine USER-Warnung erscheint, obwohl du zu einem Nicht-root-Benutzer gewechselt bist. — Die Prüfung sucht überall in der Datei nach einer USER-Anweisung. Stelle sicher, dass die Zeile mit dem USER-Schlüsselwort beginnt und nicht auskommentiert ist, damit sie erkannt wird.
Zeilenfortsetzungen oder ungewöhnliche Zeilen bleiben unberührt. — Zeilen, die keine erkannten Anweisungen sind, etwa Backslash-Fortsetzungen, werden bewusst unverändert gelassen, damit mehrzeilige RUN-Befehle nicht zerbrochen werden.
Häufig gestellte Fragen
Was ist der ArrayKit Dockerfile-Formatter und was ändert er?
Es ist ein Dockerfile-Formatter im Browser, der jedes Anweisungsschlüsselwort großschreibt, nachgestellten Leerraum abschneidet und mehrere Leerzeilen zu einer kollabiert. Er schreibt deine Befehle nicht um oder ordnet sie neu, sodass deine Build-Logik intakt bleibt.
Wie lint ich mein Dockerfile mit diesem Tool auf Best Practices?
Füge einfach dein Dockerfile ein. Neben der Formatierung führt es Prüfungen für ungepinnte Basis-Tags, ADD vs COPY, apt-get-Flags und Cache-Bereinigung, sudo-Nutzung, cd in RUN, kombinierbare RUN-Layer und das Laufen als root durch, gezeigt als WARN- und TIP-Vorschläge mit Zeilennummern.
Warum warnt mich der Dockerfile-Formatter, meinen Basis-Image-Tag zu pinnen?
Die Verwendung von :latest oder keinem Tag bedeutet, dass dein Build sich unerwartet ändern kann, wenn das Basis-Image aktualisiert wird. Das Pinnen eines bestimmten Tags wie node:20-alpine macht Builds reproduzierbar.
Kann ich das formatierte Dockerfile herunterladen?
Ja, du kannst die Ausgabe kopieren oder direkt aus dem Bereich der formatierten Ausgabe als einfaches Dockerfile herunterladen.
Wird mein Dockerfile irgendwohin hochgeladen, wenn ich diesen Formatter nutze?
Nein. Der Dockerfile-Formatter läuft vollständig in deinem Browser und die eingefügte Datei wird lokal verarbeitet, sodass deine Daten dein Gerät nie verlassen und nichts an einen Server gesendet wird.
Verwandte Tools
YAML ↔ JSON — Konvertiere YAML zu JSON und zurück.
SQL-Formatierer — Formatiere SQL für MySQL, PostgreSQL, SQL Server, SQLite, BigQuery und Oracle.
JSON-Formatierer — JSON verschönern, minimieren und validieren – mit Fehlerposition.
XML-Formatierer — Verschönere, minimiere und validiere XML und konvertiere XML ↔ JSON.
GraphQL-Formatierer — Formatiere oder minimiere GraphQL-Abfragen und -Schemas, validiere die Syntax und extrahiere Operationen.
.gitignore-Generator — Erstelle eine .gitignore aus gängigen Sprach- und Tool-Vorlagen.