[nest] nestjs에서 config, cross-env로 쉽게 환경설정

Edward Hyun·2022년 4월 5일
0

backend

목록 보기
55/120

nestjs에서는 @nest/config 를 사용한다.
단순한 환경 파일을 불러오는데 꽤나 봅잡하다. 모듈을 설정하고 등등... 굳이 그럴 필요 없을 것같아서
npmjs에 있는 config와 cross-env로 해결했다.

npm install config --save
https://www.npmjs.com/package/config

config폴더를 루트에 만들어
default.yml // 공용
development.yml // development용
production.yml // production용
을 만든다.

yml로 만들면 사용이 더 편하다.

db:
	host: xxx.xx.xx.xx 

이렇게 설정되어 있으면

호출하는 곳에서

import * as config from 'config';
const dbConfig = config.get('db');
dbConfig.host // 이와 같은 형태 변수로 사용가능하다

단지 실행할 때 NODE_ENV를 설정해 주는 부분이 번거롭다.

export NODE_ENV=production
npm run start:dev

그래서 한 줄에 env를 설정해서 실행할 수 있도록
cross-env를 설치해 준다.

npm install --save-dev cross-env
https://www.npmjs.com/package/cross-env

이렇게 설치되어 있으면 실행을 아래와 같이 한 줄에 끝낼 수 있다.

cross-env NODE_ENV=production npm run start:dev

package.json에 등록해 놓으면 편하게 사용할 수 있다.

profile
앱&웹개발(flutter, vuejs, typescript, react), 인공지능(nlp, asr, rl), 백엔드(nodejs, flask, golang, grpc, webrtc, aws, msa, nft, spring cloud, nest.js), 함수형 프로그래밍(scala, erlang)을 공부하며 정리합니다.

0개의 댓글