Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- suspense 동작원리
- 프로그래머스 문자열 압축
- js 거리두기 확인하기
- 카카오 코테
- 구름톤 챌린지
- TypeError: createContext only works in Client Components. Add the "use client" directive at the top of the file to use it. Read more:
- emtion app router
- 백준 2108 자바스크립트
- 백준 2108 nodejs
- 스코프
- suspense 비동기
- 구름톤
- 옵셔널체이닝
- 백준 1339번 자바스크립트
- 사용성 개선
- suspense react-query
- 리액트쿼리 suspense
- js 문자열 압축
- js
- next13 emotion
- 백준 1339번 js
- 프로그래머스 거리두기 확인하기
- 자바스크립트 문자열 압축
- suspense 병목현상
- emotion RSC
- app router emotion
- 자바스크립트 스코프
- 백준 1339번 nodejs
- js 스코프
- 구름톤 챌린지 회고
Archives
- Today
- Total
Lennon FE
[heroku] nodejs 배포할 때 dotenv 처리 본문
728x90
반응형
모두 API 키를 숨기기 위해. env 파일에 api키를 입력하고. gitignore에 지정해 많이 사용할 것이다.
const dotenv = require('dotenv');
dotenv.config();
그리고 dotenv를 작성하고 각각 API키를 process.env.0000를 사용해 호출할 것이다.
const port = process.env.PORT || 3000;
mongoose.connect(
process.env.MONGO_KEY,
{ useNewUrlParser: true, useUnifiedTopology: true },
function (err) {
if (err) {
console.error('mongoDB Connection Error!', err);
}
console.log('mongoDB Connected!');
// Server Open
app.listen(port, function () {
console.log(`Success http://localhost:${port}`);
});
}
);
이는 API Key를 은닉해 보안성을 증가시키면서 프로젝트를 수행하기 위한 좋은 방법이다.
그러나 배포할 때 이 부분은 항상 문제가 된다.
로컬에서 정상적으로 동작하는데 배포만 하면 오류 투성이라면 .env파일을 의심해봐야 한다.
이번 포스팅에선 heroku에 배포할 때. env 파일에 있는 사항을 heroku로 보낼 수 있는 방법에 대해 알아보려 한다.
해결 방법
heroku에선 heroku-dotenv를 지원해준다.
heroku-dotenv를 사용하면 원래 프로젝트에 있는. env파일을 heroku에 보낼 수 있다.
여기까지 왔으면 배포까진 했다는 의미이니 깊게 설명은 하지 않겠다.
$ npm i -g heroku-dotenv
heroku-dotenv를 다운로드한다.
만약 위 명령어가 에러가 난다면 아래 명령어로 설치해주도록 하자.
$ sudo npm install -g heroku-dotenv
$ heroku-dotenv push
그리고 위 명령어로 push 한다.
그럼 아래 그림과 같이. env에 있는 key들을 heroku 프로젝트로 보내주고, 이후 정상적으로 동작하는 것을 확인할 수 있다.
728x90
반응형
'🧑💻 Web > JavaScript' 카테고리의 다른 글
[JavaScript] lodash sortBy (0) | 2022.07.02 |
---|---|
[JavaScript] 화살표 함수와 일반 함수의 차이 (0) | 2022.06.03 |
billboard.js 에 대해 알아보자. (pie chart 예시) (0) | 2022.03.24 |
[자바스크립트] 2차원 배열 깊은 복사 하기 (0) | 2022.03.16 |
datePicker를 사용해 날짜 변경 시 이벤트를 적용해보자. (0) | 2022.02.28 |
Comments