자라나라 개발머리

1. node.js - MongoDB 개발 환경 세팅 / DB 연동 본문

프로젝트/개인

1. node.js - MongoDB 개발 환경 세팅 / DB 연동

iammindy 2023. 6. 5. 03:52

사용 기술

node.js v18.16.0

mongoDB atlas

mongoose

express

visual studio code

 

개발 환경 세팅

 

1. node.js 설치

검색창에 node.js 설치 쳐서 다운로드!

 

2. vscode 준비 (이미 설치 되어있음)

 

 

 

서버 실행 및 mongoDB 생성 및 연결 ( mongoose 사용 )

 

검색하다, Node.js와 MongoDB를 연결한 게시글을 찾았고 그 게시물을 토대로 구현했다.

express를 써서 하길래 그것도 뭔지 구글링!

 

express란?

node.js기반 javascrpit로 서버 구축을 하게 도와주는 가장 대중적인 웹 프레임 워크

 

express를 활용해 서버를 구축하기로 하였다.

또한, mongdDB atlas에서 클러스터 생성 및 연결을 했다.

 

아래 링크한 블로그 글을 보고 따라했기 때문에 상세 설명이 필요하신 분들은 아래 블로그를 참고해주세요!

 

https://velog.io/@dev_cecy/NODE.JS-MONGO-DB-%EC%97%B0%EB%8F%99%ED%95%98%EA%B8%B0-FEAT.-EXPRESS-MONGOOSE

 

[NODE.JS] MONGO DB 연동하기 (FEAT. EXPRESS & MONGOOSE )

서버를 연동해서 진행해보고 싶은 프로젝트가 생겼다. 그래서 간단하게 서버를 만들어보려고한다.node.js는 웹브라우저에서만 사용되던 javascript를 웹 외부에서도 실행할 수 있는 환경을 제공해

velog.io

 

 

시행착오

IP가 바뀌니 mongoDB 접속이 불가능해졌다.

 

그때는 MongoDB Atlas에 접속하여 내 클러스터에 들어간 뒤, Network access에 들어간다.

우측에 Add IP ADDRESS를 누른 뒤

ADD CURRENT IP ADDRESS

or

Accoss List Entry에 0.0.0.0(모든 IP 허용)을 적어준다.

그럼 다른 IP에서도 접속 성공!

 

 

최종 코드

(기록이 없어서 재현한 코드. 실제로 동작되지 않을 수 있습니다.)

// index.js
const express = require('express'); // express 임포트
const app = express(); // app생성
const port = 5000;

app.listen(port, () => console.log(`${port}포트입니다.`));

mongoose
	.connect( 'mongodb+srv://{id}:<password>@exchangeratecluster.1uwsu64.mongodb.net/?retryWrites=true&w=majority');
    .then(() => console.log('MongoDB conected'))
  	.catch((err) => {
    	console.log(err);
	});

 

다음에 아폴로 서버를 쓰게 되면서 express와는 여기서 안녕하게 된다!

 

참조:

https://ninjaggobugi.tistory.com/9

https://www.npmjs.com/package/express