개발을 하다보면 DB 접속정보나 Secret Key 같은 민감한 정보들이 생긴다. yml 파일에 써놓거나 하드코딩으로 코드에 박아놨다가 이런 정보들이 탈취되면 문제가 생길 수 있으니 사전에 관리를 하는 게 좋다. 이번에는 이런 중요한 정보들을 관리할 수 있는 .env
파일을 사용해보자.
사전 준비 1 : 라이브러리 설치
1 |
|
스프링에서도 사용했던 dotenv 라이브러리를 여기서도 이용하게 되었다. 터미널에서 위와 같이 입력해서 라이브러리를 설치하자.
사전 준비 2 : 설치한 라이브러리 require
1 |
|
이전과 마찬가지로 설치한 라이브러리를 사용하려면 server.js 상단에 이렇게 선언을 해주어야 한다.
사전 준비 3 : .env 파일 만들기
server.js와 같은 레벨(최상위 구조)에 .env
파일을 만들고, 변경될 확률이 있거나 민감함 정보가 포함된 환경변수들을 작성해주면 된다. 예를 들면 아래와 같은 식이다.
1 |
|
이제 .env파일에 작성한 변수를 server.js에서 불러와서 사용해보자.
process.env.변수명
이렇게 불러올 수 있다.
1 |
|
개발이 복잡해지면 어디에 어떤 환경 변수를 선언해뒀는지 하나하나 기억하기 어렵다. 민감한 정보가 코드에 하드코딩 되어 있는 것도 좋지 않으니 미리미리 .env파일을 사용해서 설정해두자. git에 퍼블릭으로 올릴 때는 gitignore 설정에서 .env파일을 업로드 하지 않도록 처리해두면 좋다.