반응형
개발환경에서는 상관없지만 상용 배포를 하기 위해서는 외부 연동과 데이터베이스 연동시 필요한 Secret Key나 Password를 별도의 파일로 관리해야 외부 노출로 인한 해킹이나 과금문제를 예방할 수 있습니다.
이를 위해 사용하는 모듈이 dotenv 입니다. dotenv(.env) 는 다양한 환경 변수들을 .env 파일에서 process.env 로 보내주는 프로그램 언어 의존도가 없는 모듈입니다.
따라서 .env file은 Github에 코드를 제출할 때 제외되어야 합니다.(.gitignore file에 .env 등록)
1. dotenv 설치
$npm install dotenv
2. dotenv 사용법
프로젝트 최상위 디렉토리에 .env file을 만들고 아래와 같이 키-밸류 값 형태로 입력해 봅니다.
SECRET=lolololo
API_KEY=12erfwferq43rq345gfafa
그리고 app.js 파일에서 다음과 같이 .env 설정한 값을 불러 옵니다.
if (process.env.NODE_ENV !== "production") {
require("dotenv").config();
}
console.log(process.env.SECRET);
console.log(process.env.API_KEY);
if문은 production 상황에서는 별도로 환경변수를 등록하여 사용하기 때문에 개발환경에서만 적용하기 위해 적용합니다.
require로 dotenv 를 사용하면 .env 파일의 변수는 process.env.변수명 으로 불러 올 수 있습니다.
[nodemon] restarting due to changes...
[nodemon] starting `node app.js`
lolololo
12erfwferq43rq345gfafa
Serving on port 3000
Database connected
3. dotenv 파일 다양한 활용 예시
- 여러 줄 변수 입력 : 쌍따옴표("") 사이에 입력, 줄바꿈시 \n 사용
- comment 입력 : 값의 뒤에 # 을 사용하고 입력
SECRET_KEY=YOURSECRETKEYGOESHERE # comment
반응형
'개발환경구축' 카테고리의 다른 글
MongoDB 소개 및 설치하기 (0) | 2023.07.08 |
---|---|
VS Code 단축키 (0) | 2023.07.07 |
VSCode 유용한 셋팅 (0) | 2023.05.26 |
윈도우 패키지 관리 Scoop 활용하기 (0) | 2023.05.25 |