반응형
0. 서론
Docker로 인해서 앱 배포 뿐만 아니라 인프라 환경을 구축하는 것도 많이 편해졌다. 필요한 이미지를 pull 해서 docker를 이용해 container환경으로 띄우면 되기 때문에, OS종류, 버전 등 인프라의 환경을 크게 고려하지 않아도 되기 때문이다.
오늘은 Docker Container로 MongoDB를 띄우는 법을 소개하겠다.
1. Pull MongoDB 이미지
mongo의 docker 이미지를 pull 한다. tag를 줘서 4.2.1 버전을 받는다.
$ docker pull mongo:4.2.1
2.MongoDB Docker Container 띄우기
다음과 깉이 container를 띄워보자
- --name: container 이름
- -p: {container 밖}:{container 안}의 port
- -v: {container 밖}:{container 안}의 volume
- -d: 백그라운드로 실행
$ docker run --name mongodb -p 27017:27017 -v /data:/data/db -d mongo
3. MongoDB Docker Container 동작 확인
백그라운드로 실행시켰으므로 docker process를 확인해보자.
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
817844fc5ec2 mongo "docker-entrypoint.s…" 2 minutes ago Up 2 minutes 0.0.0.0:27017->27017/tcp mongodb
docker container 안으로 접속해 MongoDB server가 잘 동작하는지 확인해보자.
$ docker exec -it mongodb /bin/bash
root@817844fc5ec2:/#
아래와 같이 `mongo`를 입력하면 MongoDB Server로 접속 가능하다.
root@817844fc5ec2:/# mongo
MongoDB shell version v4.2.1
connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("a52a055a-7684-4e04-a78d-6bb85758240f") }
MongoDB server version: 4.2.1
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see
http://docs.mongodb.org/
Questions? Try the support group
http://groups.google.com/group/mongodb-user
...
결론
Mongo DB Server를 Docker container로 설치해봤다. Docker를 이용해 기본적인 인프라를 설치하는 것은 소개한 것과 같이 매우 쉽다. 다음에는 container환경에서 replica set 하는 방법을 정리해봐야겠다.
반응형