[MongoDB] Docker + MongoDB 설치 및 계정생성

반응형
728x90
반응형

MongoDB를 사용하는 다른 방법

'MongoDB Altas Free버전 Compass 사용하기' 이전 포스팅을 참고하자.

https://devfunny.tistory.com/850

 

[MongoDB] MongoDB Altas Free버전 Compass 사용하기

1) monggoDB 사이트 접속 https://account.mongodb.com/account/login?signedOut=true Cloud: MongoDB Cloud account.mongodb.com 2) 회원가입 후 로그인시, 접속되는 화면 3) create a database ■ [Build a Database] ■ [Create] ■ [Create Cluste

devfunny.tistory.com

 

Altas Free 버전 Compass를 사용하여 간단한 명령어를 날려보는 포스팅을 참고하자.

https://devfunny.tistory.com/851

 

[MongoDB] database 생성 및 테스트 데이터 CRUD(INSERT, SELECT, UPDATE, DELETE) 실행해보기

들어가기전 MongoDB Altas Free 버전을 셋팅하자. https://devfunny.tistory.com/850 [MongoDB] MongoDB Altas Free버전 Compass 사용하기 1) monggoDB 사이트 접속 https://account.mongodb.com/account/login?signedOut=true Cloud: MongoDB Cloud a

devfunny.tistory.com

 

 

Docker 설치

1) 이미지 설치

docker pull mongo

 

2) 컨테이너 실행

docker run -d --name mongodb -v /xxx/xxx/xxx/docker/mongo:/data/db   \
-e MONGO_INITDB_ROOT_USERNAME=root   \
-e MONGO_INITDB_ROOT_PASSWORD=1234   \
-p 27017:27017 mongo
속성 설명
-d 컨테이너를 백그라운드에서 실행한다.
-name 만들어서 사용할 컨테이너의 이름을 정의한다.
-v 로컬 컴퓨터의 /xxx/xxx/xxx/docker/mongo 디렉터리를 컨테이너가 가지는 /data/db 디렉터리에 마운트한다.
-e MONGO_INITDB_ROOT_USERNAME mongoDB의 초기 root 계정의 이름을 설정한다.
-e MONGO_INITDB_ROOT_PASSWORD mongoDB의 초기 root 계정의 비밀번호를 설정한다.
-p 호스트와 컨테이너 간의 포트를 연결한다.
mongo 사용할 이미지명 
(위에서 설치한 mongo 이미지명)

 

 

컨테이너 접속하여 mongoDB 사용해보기

1) 컨테이너 접속

docker exec -it mongodb /bin/bash

 

2) mongoDB 접속

참고로 아래처럼 'mongo'로 접속하면, 오류가 발생한다.

mongo -u root -p 1234

-- 오류 발생
docker bash: mongo: command not found

 

MongoDB 버전에 따라 mongo가 아닌 mongosh 명령어로 접속해야 정상적으로 실행된다.

The mongo shell is removed from MongoDB 6.0. The replacement is mongosh.

 

정상적인 실행

mongoDB에 root 계정으로 접속한다. 위에서 컨테이너 실행시 입력했던 root 계정의 USERNAME, PASSWORD 그대로 입력한다.

mongosh -u root -p 1234

 

 

mongoDB 계정 생성

1) admin 데이터베이스로 이동

admin 데이터베이스 내에 계정을 생성한다.

use admin;

 

2) 계정 생성

db.createUser(
  {
    user: "book",
    pwd:  "1234",
    roles: [
    	{ "role" : "root", "db" : "admin" },
	]
  }
)

 

 

IntelliJ의 Database Connection 모습

 

 

반응형

Designed by JB FACTORY