Qué hace este convertidor .env
La configuración se mueve entre formatos todo el tiempo: un archivo local .env se convierte en un secreto de Kubernetes, una configuración JSON se convierte en variables de entorno en CI, un archivo YAML alimenta un diagrama de Helm. Este convertidor lee las variables de entorno de los manifiestos de .env, JSON, YAML, Kubernetes Secret o ConfigMap, archivos docker env o líneas de shell export, y las escribe a cualquiera de esos formatos. Un segundo modo ** compara dos archivos de entorno ** y enumera las variables que faltan, extra, vacías o duplicadas, que es exactamente lo que necesita antes de que una implementación fracase porque alguien se olvidó de agregar una clave a la producción.
Cómo usarlo
- En el modo Convert, pegue sus variables y elija el formato de entrada, o déjelo en detección automática.
- Seleccione el formato de salida. Para Kubernetes, establezca el nombre del recurso; los valores secretos están codificados automáticamente en Base64.
- Copie o descargue el resultado.
- En el modo Compare, pegue su
.envreal en A y.env.exampleu otro entorno en B. - Revisa las listas: falta en A, extra en A, valores vacíos y teclas duplicadas.
Detalles del formato
- .env: admite comentarios, prefijos
export, comillas simples y dobles, nuevas líneas escapadas en comillas dobles y comentarios en línea después de valores no citados. - JSON / YAML: un objeto plano de claves para valores. Los objetos anidados se aplanan con
__(por ejemplo.DB__HOST) y los números o booleanos se convierten en cadenas. - Kubernetes Secret: utiliza
datacon valores Base64; los manifiestos entrantes constringDatatambién se entienden. - ConfigMap: los valores de las cadenas simples bajo
data. - docker env-file:
KEY=valuesin procesamiento de cotizaciones, exactamente como lo leedocker run --env-file. - ** Concha: ** líneas
export KEY='value'con escape seguro de una sola cita, listo parasource.
Consejos
- Base64 es codificación, no cifrado. Cualquiera que pueda leer un manifiesto secreto de Kubernetes puede leer sus valores; use Secrets sellados, SOPS o un administrador secreto externo para git.
- Mantenga
.env.exampleen control de versiones con valores vacíos y use el modo de comparación en la revisión de código. - Las claves son sensibles a mayúsculas y minúsculas en Linux;
Api_KeyyAPI_KEYson variables diferentes.