ENV / Shell / Docker 변환기

브라우저에서 .env 파일을 JSON, YAML, TOML, Shell export, Docker ENV로 즉시 변환합니다. 업로드 없이 완전히 로컬에서 처리됩니다.

🔒 모든 변환은 브라우저에서 이루어집니다. 아무것도 업로드되지 않습니다.

변환기

0 / 500,000 바이트

🔒 모든 변환은 브라우저에서 이루어집니다. 아무것도 업로드되지 않습니다.

ENV / Shell / Docker 변환기을(를) 테스트했어요 — 다음엔 구조화 데이터 변환기 시도해 보세요 →

ENV 변환기란?

공식적인 dotenv 사양은 없습니다 — .env 형식은 Heroku-Foreman 규약으로 시작되었으며 호환되지 않는 방언으로 분기되었습니다. python-dotenv 파서는 key=value, key = value(공백 포함), 단일 및 이중 따옴표 값, 이중 따옴표 내의 \n 이스케이프 시퀀스를 허용합니다. Node의 dotenv 패키지는 역사적으로 이스케이프를 준수하지 않았습니다(SECRET="line1\nline2"는 리터럴 백슬래시-n으로 읽혀지며 줄 바꿈이 아닙니다). Go의 godotenv와 Rust의 dotenvy는 각각 고유한 특이사항이 있습니다. 변환기는 6가지 일반적인 형식으로 정규화합니다: dotenv(KEY=value), JSON({"KEY":"value"}), YAML(KEY: value), TOML(KEY = "value"), shell export(export KEY=value), Docker ENV(ENV KEY=value). 여러 줄 값은 dotenv에서 "..." 및 명시적 \n을 사용하고, YAML에서는 리터럴 블록 |을, TOML에서는 3중 따옴표를, shell에서는 백슬래시 연속을 사용합니다. 변환기는 이 모든 것을 6가지 형식 전체에서 보존합니다. 주석(dotenv / YAML / TOML / shell의 #, //는 dotenv 사양의 일부가 아니지만 일부 파서가 허용함)은 JSON으로 변환할 때 제거됩니다. RFC 8259에 따라 JSON은 주석을 금지하기 때문입니다.

ENV 변환기 사용법

원본대상 형식을 선택합니다. env 파일을 붙여넣습니다. 출력은 오른쪽 패널에 실시간으로 나타납니다. 스왑 버튼을 사용하여 방향을 반전합니다 — .env 파일을 JSON으로 변환하고 다시 변환한 것이 동일한지 확인하는 sanity-check에 유용합니다. 여러 줄 값: dotenv에서 MULTILINE="line1\nline2"라고 작성합니다; 변환기는 그 방향으로 변환할 때 \n을 YAML의 리터럴 블록 |으로 올바르게 확장합니다. 따옴표 값: dotenv는 KEY="value"KEY='value'를 모두 허용하고 외부 따옴표를 제거합니다. 특수 문자: 이중 따옴표 내의 $는 일부 파서에서 변수 치환을 트리거합니다 — 변환기는 치환하지 않고 값을 리터럴 문자열로 취급합니다. 오류 패널에는 구문 분석이 실패한 줄이 나열됩니다: KEY="unclosed는 종료되지 않은 따옴표가 있는 줄에 플래그됩니다. 적절한 파일 확장자로 복사하거나 다운로드합니다.

일관된 환경 변수가 중요한 이유

환경 변수는 파이프라인의 모든 단계에서 데이터베이스 URL, API 키, 기능 플래그, 서비스 엔드포인트를 제어합니다. 로컬 .env와 CI 스크립트의 쉘 export 간의 불일치는 프로덕션에서만 나타나는 조용한 장애를 일으킬 수 있습니다. Docker Compose, Kubernetes ConfigMap, 서버리스 플랫폼은 각각 같은 데이터에 대해 다른 형식을 요구합니다. 이러한 형식 간 변환 방법을 표준화하면 배포 버그의 전체 범주가 제거됩니다. 변환을 로컬에서 오프라인으로 유지하면 서드파티 서비스에 비밀 정보가 노출되는 것을 방지합니다 — SOC 2 및 ISO 27001 준수에 필수적입니다.

자주 묻는 질문

내 데이터는 안전한가요?

네. 모든 변환은 브라우저의 JavaScript에서 이루어집니다. 어떤 서버로도 전송되지 않습니다. 오프라인에서도 사용할 수 있습니다.

여러 줄 값을 지원하나요?

네, .env 파일의 인용된 여러 줄 값이 지원됩니다. 예: CERT="line1\nline2".

주석은 어떻게 처리되나요?

#으로 시작하는 주석 줄은 변환 시 제거되며 출력에 포함되지 않습니다.