React
[env-cmd] next.js에서 각 환경에 맞는 환경변수 설정하기
코딩하는 Jay
2021. 9. 27. 15:50
반응형
개인 프로젝트를 개발할 때는 딱히 신경쓰지 않아도 될 수도 있지만, 실무에서는 개발 환경, QA 환경, 운영 환경등 각 환경마다 서버 주소나 변수들이 다른 경우가 많습니다. 그래서 각각 환경에 맞게 변수들을 등록해두고 환경에 맞게 변수가 자동적으로 적용되도록 해야합니다. 오늘은 env-cmd 패키지를 이용하여 환경변수를 설정해보겠습니다.
먼저, env-cmd를 설치합니다.
npm install env-cmd
or
yarn add env-cmd
설치를 했다면, 환경변수 파일을 생성합니다.
저는 아래와 같은 이름과 내용으로 두 개의 파일을 생성하겠습니다.
.env.dev
NEXT_PUBLIC_MODE=dev
.env.prod
NEXT_PUBLIC_MODE=prod
그리고 package.json 파일을 수정합니다.
{
...
"script": {
"dev": "env-cmd -f .env.dev next dev",
"prod": "env-cmd -f .env.prod next dev",
...
},
...
}
script.dev는 수정했고, script.prod는 추가했습니다.
그리고 코드 실행되는 부분에 아래 코드를 추가해서 npm run dev와 npm run prod 실행결과를 확인해봅니다.
cosole.log('mode', process.env.NEXT_PUBLIC_MODE);
npm run dev에서는 'mode dev'가 npm run prod에서는 'mode prod'가 출력된다면 정확하게 성공한것입니다.
참고:
env-cmd
Executes a command using the environment variables in an env file
www.npmjs.com
반응형