민감한 정보들을 직접 소스코드에 작성하고 깃허브에 올릴 경우 외부로 노출되게 된다. 이를 방지하기 위해 .env 파일을 따로 생성하여 관리해야 한다.
.env 파일은 gitignore를 통해 깃허브에 올라가지 않도록 해야한다.
: 환경변수를 .env파일에 저장하고 process.env로 로드하는 의존성 모듈
npm install dotenv
// .env
DB_HOST=localhost
DB_USER=root
DB_PASS=1234
require("dotenv").config();
console.log("DB_HOST:", process.env.DB_HOST);
console.log("DB_USER:", process.env.DB_USER);
console.log("DB_PASS:", process.env.DB_PASS);
import dotenv from "dotenv";
dotenv.config();
console.log("DB_HOST", process.env.DB_HOST);
console.log("DB_USER:", process.env.DB_USER);
console.log("DB_PASS:", process.env.DB_PASS);
다른 경로에 저장할 경우, config() 호출 시 path 옵션에 해당 파일 경로를 넘기면 된다
// .env.local
DB_HOST=localhost
DB_USER=test
DB_PASS=5678
// index
import dotenv from 'dotenv';
dotenv.config({ path: '.env.local' });
console.log('DB_HOST:', process.env.DB_HOST);
console.log('DB_USER:', process.env.DB_USER);
console.log('DB_PASS:', process.env.DB_PASS);