깃허브에 프로젝트를 업로드할 때 .gitignore 파일에 업로드를 제외할 파일 목록을 리스트업하여 관리한다.
하지만 그렇게해도 코드들에 노출되는 개인 정보들이 있을 수 있다.
예를 들면 Token을 검증하는데 사용하는 secret_key라던지
사용중인 DB의 엔드포인트, 유저, 패스워드 같은 정보들 말이다.
지금까지는 아무 생각없이 업로드를 해왔는데 노출이 되면 자칫 치명적인 타격을 입을 수 있다.
그래서 dotenv라는 라이브러리를 사용한다. 오늘은 dotenv 사용법을 정리해보려고 한다.
dotenv 설치
npm을 이용하여 dotenv를 설치한다.
$ npm i dotenv
.env 파일 생성
dotenv 설치 후 별도 설정을 하지 않으면 프로젝트의 루트 디렉토리에 위치한 .env 파일로 부터 환경변수를 읽어온다.
따라서 현재 작성중인 프로젝트 폴더 최상위 디렉토리에 .env 파일을 만들어준다.
그리고 그 안에 필요한 환경 변수를 key=value 포맷으로 작성해주면 된다.
// .env 파일
DB_HOST=localhost
DB_USER=root
DB_PASS=1234
SECRET_KEY=secretkey
.env 파일에 작성한 환경변수 불러오기
require("dotenv").config();
console.log("DB_HOST:", process.env.DB_HOST);
console.log("DB_USER:", process.env.DB_USER);
console.log("DB_PASS:", process.env.DB_PASS);
처음에 dotenv 라이브러리를 설치하면 .env 파일이 자동으로 생성되는 줄 알았는데 직접 만들어줘야하는 것이었다.....
아무튼 이렇게하고 .gitignore에 .env 파일을 추가하면 환경변수를 안전하게 관리할 수 있다.
앞으로 깃허브에 프로젝트 푸쉬하기 전에 꼭 환경변수 설정을 해줘야겠다!
'Development > TIL' 카테고리의 다른 글
npm run build (feat. CORS 에러 패배) (0) | 2023.05.11 |
---|---|
CORS를 만나다(feat. 404 NOT FOUND) (0) | 2023.05.10 |
Access와 Refresh Token (0) | 2023.05.07 |
git으로 commit하고 push하자 (0) | 2023.05.06 |
객체지향 프로그래밍(Object Oriented Programming) (0) | 2023.05.03 |