MongoDB Atlas 연동하여 서버배포를 했는데 데이터 조회가 잘 되지 않았다.
[Error: Cannot find module 'dotenv'] 에러메세지가 출력되었다.
const dotenv = require('dotenv');
그런데 생각해보니 아래 코드 까지만 입력했어도 로컬환경에서는 문제가 없어서 이 이유는 아닌듯 하였다.
require('dotenv').config();
1) 터미널을 통해 AWS EC2에 접속해서 서버를 열 깃 폴더 안에 들어간다.
2) 아래 명령어를 입력해 환경변수 파일을 연다.
$vim .env
3) 기존에 로컬에서 만들었던 .env 파일 안에 작성했던 코드들을 복사한 후 입력모드로 붙여넣었다.
4) 다 작성했으면 !wq -> enter (저장 후 나오기)
그 후 실행했더니 적용은 잘 된 듯 하였다. 이 문제는 해결! 그런데 새로운 에러메세지가 출력되었다.
[MongoNetworkError: C0D7BF032C7F0000:error:0A000438:SSL routines:ssl3_read_bytes:tlsv1 alert internal error:../deps/openssl/openssl/ssl/record/rec_layer_s3.c:1586:SSL alert number 80 ......]
1) mongodb atlas -> projects (해당하는 프로젝트 선택) -> 좌측 하단의 Netword Access 클릭 -> 우측의 +ADD IP ADDRESS 클릭
2) Access List Entry: 0.0.0.0/0 입력 후 confirm 버튼 클릭!
( 모든 ip 접속을 허용한다는 의미이다.)
그 후 다시 서버를 실행해보니 정상적으로 데이터를 읽어올 수 있게 되었다.