Zum Inhalt springen

.env-Parser und -Konverter

.env Parser & Converter

Parst eine .env-Datei und wandelt sie in JSON, YAML, Shell-Exports, Docker- oder Kubernetes-Format um.

Liest eine `.env`-Datei so, wie `dotenv` es tut – Quoting-Regeln, `export`-Präfixe, `${VAR}`-Interpolation – und gibt sie neu aus als JSON, YAML, Shell-Exporte, einen Compose-`environment:`-Block, eine Kubernetes-ConfigMap oder ein Secret oder eine aufgeräumte `.env`.

🔒 Läuft vollständig in Ihrem Browserdotenvenvconvertconfig

Ein flaches Objekt. Das, was die meisten Konfigurationslader und CI-Secret-Importe nehmen.

.env-Eingabe

Eine .env-Datei ablegen

Wird in diesem Tab gelesen. Nichts wird hochgeladen und nichts gespeichert.

`export` wird angenommen und ignoriert. Einfache Anführungszeichen sind wörtlich; doppelte expandieren `\n` und dürfen über mehrere Zeilen gehen; ein Wert ohne Anführungszeichen endet an einem Leerzeichen gefolgt von `#`.

JSON

Variablen

8

Gelesene Zeilen

8

Interpoliert

1

So funktioniert es

  1. Fügen Sie die .env ein oder legen Sie sie ab

    Gelesen in diesem Tab; nichts wird hochgeladen und nichts gespeichert. Kommentare, Leerzeilen und `export`-Präfixe werden alle verstanden.

  2. Wählen Sie das Zielformat

    Der Hinweis unter der Auswahl sagt, wofür jedes gedacht ist. ConfigMap und Secret fragen zusätzlich nach Ressourcenname und Namespace.

  3. Prüfen Sie die Duplikate und die unlesbaren Zeilen

    Ein zweimal zugewiesener Schlüssel wird beim Namen gemeldet – hier gewinnt die letzte Zuweisung, wie in `dotenv`, aber nicht jeder Loader sieht das so. Zeilen, die nicht geparst werden konnten, werden mit ihrer Nummer aufgeführt.

  4. Maskieren Sie, bevor Sie einen Screenshot machen

    Der Maskierungsschalter blendet Werte aus, deren Schlüssel nach einem Geheimnis aussieht. Er passt auf den Namen, behandeln Sie ihn also als Gefälligkeit und nicht als Garantie.

Häufige Fragen

Warum wird `p@ss$word#x` nicht am `#` abgeschnitten?

Weil es in einfachen Anführungszeichen steht, wo nichts eine Sonderbedeutung hat. In einem Wert ohne Anführungszeichen beginnt ein Kommentar bei einem Leerzeichen gefolgt von `#`, sodass `abc#def` die Raute behält, `abc #def` aber nicht. Doppelte Anführungszeichen expandieren `\n` und `${VAR}`; einfache Anführungszeichen expandieren nichts.

Greift die Interpolation auf meine Shell-Umgebung zu?

Nein. `${VAR}` wird nur gegen frühere Zeilen derselben Datei aufgelöst – diese Seite hat keinen Zugriff auf Ihre Umgebung und würde sie nicht lesen, wenn sie es könnte. Eine Referenz auf etwas, das darüber nicht definiert ist, bleibt, wie sie geschrieben steht.

Ist die Secret-Ausgabe sicher zu committen?

Nein. Ein Kubernetes-Secret speichert Base64, was eine Kodierung ist, keine Verschlüsselung – jeder, der die Datei lesen kann, liest die Werte mit einem Befehl. Sealed Secrets, SOPS oder ein externer Secret-Speicher sind das, was es sicher zu committen macht.

Was geschieht mit einem mehrzeiligen Wert?

Ein Wert in doppelten Anführungszeichen darf sich über Zeilen erstrecken und wird als ein Wert gelesen – so landet ein privater PEM-Schlüssel in einer `.env`. Er kommt intakt in JSON und YAML an; in den Shell- und Docker-Ausgaben steht er in einfachen Anführungszeichen, was die Zeilenumbrüche wörtlich erhält.

Eingabe aus

Danach

Diese Tools nehmen an, was dieses hier erzeugt, das Ergebnis kann also direkt weiter.