본문 바로가기
Programming/JS & TS

[Back-End] Node.js 에서 환경 변수 파일을 사용하려면?

by 강한수달 2022. 1. 6.

환경 변수란?

: 일반적으로 우리는 코드 베이스는 하나만 관리하고, 개발, 테스트, 운영 등 여러 환경에 애플리케이션을 배포하는데요. 어느 환경에 배포하느냐에 따라서 다르게 설정해야하는 항목은 보통 운영 체제 레벨에서 환경 변수를 통해 관리하게 됩니다.

 

대표적인 예로, 개발 환경에서는 로컬 DB를 사용해야하는데, 운영 환경에서는 원격 DB를 사용해야하는 경우를 들 수 있습니다. 뿐만 아니라 DB password나 API key와 같은 인증 정보는 공개된 코드 저장소에 올리면 안 되기 때문에 환경 변수로 저장해놓고 사용하는 것이 일반적입니다.

 

process.env

- Node.js 에서 환경 변수에 접근할 때 process.env 라는 내장 자바스크립트 객체를 사용

- process 는 전역 객체이므로 애플리케이션 어디에서든지 접근이 가능

[2] daleseo, js-node-process-env, Node.js에서 환경 변수 다루기 (process.env)

 

dotenv

특징

- .env 파일에서 process.env로 환경 변수를 로드하는 제로 종속성 모듈

- Twelve-Factor App 방법론을 기반으로 코드와 별도의 환경에 정보를 구성함

 

설치 방법

npm install dotenv --save

 

예제 코드

- example.js

require('dotenv').config({ path: 'setting.env' });

console.log(process.env.MYSQL_HOST)
console.log(process.env.MYSQL_PORT)
console.log(process.env.MYSQL_USERNAME)
console.log(process.env.MYSQL_HOST)
console.log(process.env.MYSQL_DB)
console.log(process.env.MYSQL_LIMIT)

 

- setting.env

MYSQL_HOST = localhost
MYSQL_PORT = 3306
MYSQL_USERNAME = "root"
MYSQL_HOST = "toor"
MYSQL_DB = "testDB"
MYSQL_LIMIT = 10

 

실행 결과

C:\example>node example.js

 

 

# Reference

[1] npmjs, package/dotenv

  URL : https://www.npmjs.com/package/dotenv

[2] daleseo, js-node-process-env, Node.js에서 환경 변수 다루기 (process.env)

  URL : https://www.daleseo.com/js-node-process-env/

[3] daleseo, js-dotenv, dotenv로 환경 변수 관리하기

  URL : https://www.daleseo.com/js-dotenv/

[4] devhyun.com, NodeJS 환경 변수 설정

  URL : http://devhyun.com/blog/post/23

댓글