env란?

웹, 앱 개발을 하다보면 포트(PORT), DB관련 정보, API_KEY 등 개발자 혼자서 또는 팀만 알아야 하는 값 즉, git, 오픈소스에 올리면 안되는 값들이 있다.

이때 필요한 것이 dotenv 패키지 이며 환경변수 파일을 외부에 만들어 URL, 포트(PORT), API_KEY 등을 저장시켜 소스코드 내에 하드코딩 하지 않고 사용할 수 있다.

.env 파일

외부 파일(.env)에 환경변수를 정의하여 변수로 받아오는 이유는 보안과 유지보수에 용이하기 때문이다. .env 파일은 프로젝트의 최상위 루트에 파일을 만들어 놓는다.

Untitled

변수명은 반드시 ‘REACT_APP_’ 으로 시작되어야 한다.

create- react-app 에서는 보안이 필요한 환경변수의 유출을 미연에 방지하기 위해 REACTAPP으로 시작되지 않는 환경 변수는 무시한다.

.env 사용하기

*process.env.REACT_APP_ 은 예약어이므로, 다른 이름을 사용하면 React가 인식하지 않는다.*

*process.env는 실행시 로드되기 때문에 .env의 설정을 바꾸게 되면 React 프로젝트를 다시 시작해야 한다.*

// config.js
const params = {
	key: process.env.REACT_APP_변수명,
}
// .env
REACT_APP_변수명=값