Vai al contenuto

Lettore e convertitore di file .env

.env Parser & Converter

Analizza un file .env e lo converte in JSON, YAML, export di shell o nei formati di Docker e Kubernetes.

Legge un file `.env` come lo legge `dotenv` — regole di quoting, prefissi `export`, interpolazione `${VAR}` — e lo riemette come JSON, YAML, export di shell, un blocco `environment:` di Compose, una ConfigMap o un Secret di Kubernetes, oppure un `.env` riordinato.

🔒 Funziona interamente nel tuo browserdotenvenvconvertconfig

Un oggetto piatto. Quello che accettano quasi tutti i caricatori di configurazione e gli importatori di segreti in CI.

.env in ingresso

Lascia cadere un file .env

Letto in questa scheda. Non viene caricato né salvato niente.

`export` viene accettato e ignorato. Gli apici singoli sono letterali; le virgolette doppie espandono `\n` e possono coprire più righe; un valore senza virgolette finisce a uno spazio seguito da `#`.

JSON

Variabili

8

Righe lette

8

Interpolate

1

Come si usa

  1. Incollare o trascinare il .env

    Viene letto in questa scheda; non viene caricato nulla e non viene conservato niente. I commenti, le righe vuote e i prefissi `export` sono tutti riconosciuti.

  2. Scegliere il formato di destinazione

    La nota sotto il selettore dice a che cosa serve ciascuno. ConfigMap e Secret chiedono anche un nome di risorsa e un namespace.

  3. Controllare i duplicati e le righe illeggibili

    Una chiave assegnata due volte viene segnalata per nome: qui vince l’ultima assegnazione, come in `dotenv`, ma non tutti i caricatori sono d’accordo. Le righe che non si sono potute analizzare vengono elencate con il loro numero.

  4. Mascherare prima di fare uno screenshot

    L’interruttore di mascheramento svuota i valori la cui chiave sembra un segreto. Riconosce in base al nome, quindi va preso come una cortesia e non come una garanzia.

Domande frequenti

Perché `p@ss$word#x` non viene troncato al `#`?

Perché sta fra apici singoli, dove niente è speciale. In un valore senza virgolette un commento comincia a uno spazio seguito da `#`, quindi `abc#def` tiene il cancelletto mentre `abc #def` no. Le virgolette doppie espandono `\n` e `${VAR}`; gli apici singoli non espandono niente.

L’interpolazione arriva all’ambiente della mia shell?

No. `${VAR}` si risolve solo sulle righe precedenti dello stesso file: questa pagina non ha accesso all’ambiente e non lo leggerebbe nemmeno se potesse. Un riferimento a qualcosa che non è definito più in alto resta scritto com’è.

L’uscita Secret si può committare senza rischi?

No. Un Secret di Kubernetes conserva Base64, che è una codifica e non una cifratura: chiunque possa leggere il file può leggerne i valori con un solo comando. Sono Sealed Secrets, SOPS o un archivio di segreti esterno a renderlo sicuro da committare.

Che cosa succede a un valore su più righe?

Un valore fra virgolette doppie può occupare più righe e viene letto come un valore solo — è così che una chiave privata PEM finisce in un `.env`. Arriva intatto in JSON e in YAML; nelle uscite per la shell e per docker viene messo fra apici singoli, che tengono gli a capo letterali.

Può ricevere da

Dopo

Questi accettano ciò che produce questo strumento, così il risultato può passare direttamente.