우당탕탕 우리네 개발생활

[MongoDB] 초간단 로컬 mongodb 사용하기(feat. docker) 본문

tech

[MongoDB] 초간단 로컬 mongodb 사용하기(feat. docker)

미스터카멜레온 2023. 11. 9. 12:49
몽고DB(MongoDB←HUMONGOUS)는 크로스 플랫폼 도큐먼트 지향 데이터베이스 시스템이다. NoSQL 데이터베이스로 분류되는 몽고DB는 JSON과 같은 동적 스키마형 도큐먼트들(몽고DB는 이러한 포맷을 BSON이라 부름)을 선호함에 따라 전통적인 테이블 기반 관계형 데이터베이스 구조의 사용을 삼간다. 이로써 특정한 종류의 애플리케이션을 더 쉽고 더 빠르게 데이터 통합을 가능케 한다.
 

관계형 데이터베이스 - 위키백과, 우리 모두의 백과사전

위키백과, 우리 모두의 백과사전. 관계형 데이터베이스(關係形 Database, Relational Database, 문화어: 관계자료기지, 관계형자료기지, RDB)는 키(key)와 값(value)들의 간단한 관계를 테이블화 시킨 매우 간

ko.wikipedia.org

 

MongoDB에 대한 사전적인 의미는 위와 같습니다.

 

저는 nodejs(expressjs, nestjs)를 이용한 백엔드 개발을 주로 하고 있는 개발자로서 mongoose라는 라이브러리를 통해 mongoDB를 사용하고 있습니다. 현업에서는 atlas라는 클라우드 서비스를 통해 mongoDB 를 구축하고 사용했었는데, 로컬에서도 사이드 프로젝트 등에 사용해야 하는 상황들이 생겼습니다. 다양한 레퍼런스들을 찾아보면서 알게 된 방법을 공유드리고자 합니다. 기본적으로 docker에 대한 이해가 있다는 가정하에 설명드립니다.

 

1. MongoDB 이미지를 Docker를 통해 내려받습니다.

docker pull mongo

 

2. 내려받은 MongoDB 이미지를 구동합니다.

docker run --name mongodb -p 27017:27017 -e MONGO_INITDB_ROOT_USERNAME=root -e MONGO_INITDB_ROOT_PASSWORD=1234 -d mongo

 

주목할 부분은 MONGO_INITDB_ROOT_USERNAMEMONGO_INITDB_ROOT_PASSWORD 옵션입니다. 이 옵션들은 추후 MongoDB 를 접속할 때 사용되니 커스터마이징하여 사용하시면 되겠습니다.

 

3. MongoDB의 원활한 사용을 위해 MongoDB Compass(edit tool) 다운로드를 합니다.

https://www.mongodb.com/try/download/compass

 

Try MongoDB Tools - Download Free Here

Free download for MongoDB tools to do more with your database. MongoDB Shell, Compass, CLI for Cloud, BI Connector and other database tools available.

www.mongodb.com

위 링크를 통해 사용하시는 운영체제에 맞는 툴을 다운로드해주시면 되겠습니다.

 

4. MongoDB Compass를 통해 MongoDB에 접속합니다.

앞서 설정했던 username과 password로 아래와 같이 커넥션 세팅을 하고 접속을 합니다.

 

접속이 완료되었으면 아래와 같이 database를 생성하여 사용하시면 되겠습니다. Collection Name이 비어있으면 생성이 되지 않아 우선 생성 후 추가적인 Collection들을 만든 이후 삭제해 주면 됩니다.(Database에 Collection이 비어있으면 Database 자체가 삭제되어 버리니 유의하시기 바랍니다)

 

mongoDB를 로컬로 구동해보는 방법을 알아봤습니다. 로컬테스트를 통해 mongoDB학습에 많은 도움이 되길 바라겠습니다.

 

감사합니다.