[MongoDB] Docker + MongoDB 설치 및 계정생성
- Coding/Docker
- 2023. 5. 9.
반응형
728x90
반응형
MongoDB를 사용하는 다른 방법
'MongoDB Altas Free버전 Compass 사용하기' 이전 포스팅을 참고하자.
https://devfunny.tistory.com/850
Altas Free 버전 Compass를 사용하여 간단한 명령어를 날려보는 포스팅을 참고하자.
https://devfunny.tistory.com/851
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 모습
반응형
'Coding > Docker' 카테고리의 다른 글
[docker] jenkins 설치하고 간단한 Item 생성해서 빌드해보자 (0) | 2023.04.02 |
---|---|
docker + postgresql 설치부터 계정 생성까지 (0) | 2023.03.08 |
Dockerfile이란 무엇인가? (0) | 2023.03.02 |
[Docker] Dockerfile + docker-compose 를 사용하여 SpringBoot 프로젝트 실행시키기 (1) | 2023.02.22 |
docker 에 rabbitMQ 설치하기 (with docker-compose.yml) (0) | 2021.10.13 |