Node.js 환경변수 관리 - dotenv-vault로 팀 협업 개선하기

문제 상황

팀 규모가 커지면서 환경변수 관리가 문제였다. 신규 입사자가 올 때마다 Slack DM으로 .env 파일을 전달하고, API 키가 변경되면 개별 공지를 했다. 휴먼 에러가 잦았고, 누가 최신 버전을 가지고 있는지 파악하기 어려웠다.

해결 방안

1Password나 AWS Secrets Manager도 고려했지만, 러닝커브와 비용 문제로 dotenv-vault를 선택했다. 기존 dotenv 사용 코드를 거의 건드리지 않고 도입할 수 있었다.

설정 과정

npm install dotenv-vault
npx dotenv-vault new

기존 .env 파일을 vault에 푸시:

npx dotenv-vault push

팀원 초대 후 각자 pull:

npx dotenv-vault pull

환경별 관리

개발/스테이징/프로덕션 환경을 분리했다:

npx dotenv-vault open production

배포 시에는 암호화된 토큰만 사용:

// .env.vault 파일이 자동 생성됨
require('dotenv-vault').config();

결과

  • Slack 공유 빈도 90% 감소
  • 환경변수 누락으로 인한 배포 실패 제로화
  • Git에 .env.vault만 커밋하면 되어 보안 개선

팀 규모가 5명 이상이라면 도입을 권장한다. 무료 플랜으로도 충분히 사용 가능했다.

Node.js 환경변수 관리 - dotenv-vault로 팀 협업 개선하기