.env in JSON umwandeln
.env in JSON: Der Umwandler liest dotenv-Dateien mit Kommentaren, Anführungszeichen, export und ${VAR}-Ersetzung und gibt JSON aus. Umgekehrt wird JSON zur .env-Datei.
.env-Dateien enthalten oft Passwörter und API-Schlüssel. Die Umwandlung läuft nur in Ihrem Browser, nichts wird übertragen oder gespeichert. Für Produktivsysteme sind ein Secret-Manager oder die Geheimnisverwaltung Ihrer Plattform sicherer als .env-Dateien.
Umgebungsvariablen aus .env als JSON
.env in JSON wandelt eine Datei mit Umgebungsvariablen in ein JSON-Objekt um, etwa für eine Konfigurationsdatei, ein Deployment-Skript oder die Einstellungen eines Cloud-Dienstes. Das Format stammt aus der Bibliothek dotenv und wird von Node.js, Python (python-dotenv), PHP (vlucas/phpdotenv), Docker Compose und vielen Frameworks gelesen: je Zeile NAME=Wert, Kommentare mit #, optional ein vorangestelltes export.
Der Parser beachtet die üblichen Regeln: Werte in doppelten Anführungszeichen dürfen \n für Zeilenumbrüche enthalten und über mehrere Zeilen gehen, einfache Anführungszeichen nehmen den Inhalt wörtlich, und ein # nach einem Leerzeichen beginnt einen Kommentar, außer innerhalb von Anführungszeichen. Mit der Ersetzung werden ${DB_HOST} oder ${PORT:-8080} durch vorher definierte Werte ersetzt. So wird aus der Datei env zu JSON ohne Handarbeit. Umgekehrt erzeugt „JSON in .env“ aus verschachteltem JSON flache Namen wie DB_HOST und setzt Anführungszeichen nur, wo sie nötig sind.
Grenzen: Die Bibliotheken unterscheiden sich in Details, zum Beispiel bei Escape-Sequenzen in doppelten Anführungszeichen oder bei Variablen ohne geschweifte Klammern. Docker Compose ersetzt Variablen zudem aus der Umgebung des Rechners, die das Werkzeug nicht kennt. Fehlende Variablen werden leer ersetzt und gemeldet. Das erzeugte JSON lässt sich mit JSON formatieren weiter prüfen.
Anleitung: .env in JSON in 4 Schritten
- Unter „Richtung“ .env in JSON oder JSON in .env wählen.
- Den Inhalt der .env-Datei oder das JSON in das Feld „Eingabe“ einfügen oder „Beispiel“ laden.
- Optionen setzen: ${VAR} ersetzen, Zahlen und true/false umwandeln, NAME__TEIL verschachteln; für JSON in .env auch Trenner und Großbuchstaben.
- Das Ergebnis prüfen, Hinweise zu fehlenden Variablen beachten und kopieren.
Typische Anwendungsfälle
- Cloud-Deployment: Umgebungsvariablen aus einer lokalen .env als JSON für eine Konfigurationsdatei oder ein Deployment-Skript übernehmen.
- Konfiguration umbauen: Verschachteltes JSON in flache Variablen wie DB__HOST für Container oder ASP.NET Core umwandeln.
- Fehlersuche: Sehen, wie Anführungszeichen, Kommentare und ${VAR}-Ersetzungen in einer .env tatsächlich gelesen werden.
Häufige Fragen
Welche .env-Syntax wird unterstützt?
NAME=Wert je Zeile, optional mit export davor, Kommentare mit #, Werte in doppelten, einfachen oder Backtick-Anführungszeichen, mehrzeilige Werte in Anführungszeichen und \n, \t sowie \" in doppelten Anführungszeichen.
Wann wird ${VAR} ersetzt?
Wenn die Option aktiv ist, werden ${NAME}, $NAME und ${NAME:-standard} durch Werte ersetzt, die weiter oben in derselben Datei stehen. In einfachen Anführungszeichen wird nichts ersetzt, so wie bei dotenv-expand.
Warum bleiben Zahlen standardmäßig Text?
Umgebungsvariablen sind immer Zeichenketten. Ihr Programm wandelt sie selbst um. Wenn Sie für eine JSON-Konfiguration echte Zahlen und Wahrheitswerte brauchen, schalten Sie die Typ-Option ein.
Wie wird verschachteltes JSON zu .env?
Die Schlüssel werden mit Unterstrich verbunden und in Großbuchstaben geschrieben, aus {"db": {"host": "x"}} wird DB_HOST=x. Mit dem doppelten Unterstrich entsteht DB__HOST, wie es zum Beispiel ASP.NET Core erwartet.
Ist es sicher, Secrets hier einzufügen?
Die Umwandlung läuft nur im Browser, nichts wird gesendet oder gespeichert. Trotzdem gilt: Echte Produktionsgeheimnisse gehören nicht in Chats, Tickets oder fremde Werkzeuge, auch nicht in Repositorys.
Wie lese ich eine .env-Datei in Node.js ein?
Mit dem Paket dotenv und require('dotenv').config() am Anfang des Programms; danach stehen die Werte in process.env. Neuere Node.js-Versionen laden die Datei auch mit der Option --env-file=.env.
Gehört die .env-Datei ins Git-Repository?
Nein, wenn sie Passwörter oder API-Schlüssel enthält. Tragen Sie .env in die .gitignore ein und legen Sie stattdessen eine .env.example mit Platzhaltern ins Repository.
Das könnte auch helfen
JSON minimieren
JSON auf eine Zeile verdichten: Leerraum entfernen, Zahlen exakt erhalten, optional Schlüssel sortieren.
ÖffnenJSON in CSV umwandeln
JSON-Arrays in CSV für Excel umwandeln: verschachtelte Felder als Spalten, Semikolon oder Komma.
ÖffnenCSV in JSON umwandeln
CSV in JSON umwandeln mit automatischer Trennzeichen-Erkennung und Anführungszeichen nach RFC 4180.
ÖffnenXML formatieren und prüfen
XML einrücken, minimieren und auf Wohlgeformtheit prüfen, mit Fehlerstelle in Zeile und Spalte.
ÖffnenXML in JSON umwandeln
XML in JSON umwandeln: Attribute mit Präfix, wiederholte Elemente als Arrays, Zahlen erkannt.
ÖffnenYAML in JSON umwandeln
YAML prüfen und in JSON umwandeln: Listen, Anker, Block-Strings und mehrere Dokumente.
Öffnen