Pular para o conteúdo

Conversor de .env

.env Parser & Converter

Analisa um arquivo .env e o converte para JSON, YAML, exports de shell, Docker ou formatos do Kubernetes.

Lê um arquivo `.env` do jeito que o `dotenv` lê — regras de aspas, prefixos `export`, interpolação `${VAR}` — e o emite de novo como JSON, YAML, exports de shell, um bloco `environment:` do Compose, um ConfigMap ou Secret do Kubernetes, ou um `.env` arrumado.

🔒 Roda inteiramente no seu navegadordotenvenvconvertconfig

Um objeto plano. O que quase todos os carregadores de configuração e importadores de segredos em CI aceitam.

.env de entrada

Solte um arquivo .env

Lido nesta aba. Nada é enviado e nada é guardado.

`export` é aceito e ignorado. Aspas simples são literais; as duplas expandem `\n` e podem atravessar linhas; um valor sem aspas termina num espaço seguido de `#`.

JSON

Variáveis

8

Linhas lidas

8

Interpoladas

1

Como usar

  1. Cole ou solte o .env

    Lido nesta aba; nada é enviado e nada é armazenado. Comentários, linhas em branco e prefixos `export` são todos entendidos.

  2. Escolha o formato de destino

    A nota abaixo do seletor diz para que serve cada um. ConfigMap e Secret pedem também um nome de recurso e um namespace.

  3. Confira as duplicatas e as linhas ilegíveis

    Uma chave atribuída duas vezes é relatada pelo nome: aqui a última atribuição vence, como no `dotenv`, mas nem todo carregador concorda. Linhas que não puderam ser analisadas são listadas com seu número.

  4. Mascare antes de tirar uma captura de tela

    A opção de mascarar apaga os valores cuja chave parece um segredo. Ela casa pelo nome, então trate como uma cortesia, não como uma garantia.

Perguntas frequentes

Por que `p@ss$word#x` não é cortado no `#`?

Porque está entre aspas simples, onde nada é especial. Em um valor sem aspas um comentário começa em um espaço seguido de `#`, então `abc#def` mantém o `#`, mas `abc #def` não. Aspas duplas expandem `\n` e `${VAR}`; aspas simples não expandem nada.

A interpolação chega ao meu ambiente de shell?

Não. `${VAR}` é resolvido só contra linhas anteriores do mesmo arquivo: esta página não tem acesso ao seu ambiente e não o leria se pudesse. Uma referência a algo não definido acima fica como escrita.

A saída Secret é segura para commitar?

Não. Um Secret do Kubernetes guarda Base64, que é uma codificação, não criptografia: qualquer um que consiga ler o arquivo lê os valores com um comando. Sealed Secrets, SOPS ou um cofre de segredos externo são o que torna seguro commitar.

O que acontece com um valor de várias linhas?

Um valor entre aspas duplas pode ocupar várias linhas e é lido como um valor só — é assim que uma chave privada PEM vai parar em um `.env`. Ele sobrevive intacto em JSON e YAML; nas saídas de shell e docker vai entre aspas simples, o que mantém as quebras de linha literais.

Pode receber de

Em seguida

Estas aceitam o que esta ferramenta produz, então o resultado pode ir direto.