web/node.js

node.js에서 NODE_ENV를 사용하여 개발, 운영 환경 구분하기.

반응형

express에서는 NODE_ENV라는 환경변수를 통해 개발환경과 운영환경에 따른 설정정보를 다르게 가져올 수 있다.

설정방법


Mac

1
export NODE_ENV=production
cs


Window

1
set NODE_ENV=production
cs


사용방법

expreess 모듈에서 process.env.NODE_ENV 값을 접근하여 저장된 환경설정 값을 가져올 수 있다. 아래와 같이 설정했을 때 환경설정이 없거나 developer이면 config/developer.js 파일을 읽어서 정보를 읽고 productiond이면 production.js 파일을 읽어온다. 이런 방식을 사용해서 개발과 운영에서 사용되는 db 정보 등등을 구별해서 사용할 수 있다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#config/developer.js
const developer = module.exports;
 
developer.info = {
  'id' : 'developer'
};
 
#config/production.js
const production = module.exports;
 
production.info = {
  'id' : 'production'
};
 
#app.js
let config;
 
// config load
if (!process.env.NODE_ENV) {
  config = require('./config/developer');
else if (process.env.NODE_ENV == 'production') {
  config = require('./config/production');
else if (process.env.NODE_ENV == 'development') {
  config = require('./config/developer');
}
 
console.log(config.id);
cs


반응형

'web > node.js' 카테고리의 다른 글

테스트 모듈 Assert 정리  (0) 2018.10.05
node.js express 모듈 - router  (0) 2018.10.05
Node js 테스트 프레임워크 Mocha  (0) 2018.10.04
npm 설치시 ENOSELF 오류 해결 방법  (0) 2018.05.27
npm 특정버전 설치하기  (0) 2018.05.27