MongoDB
docker
docker-compose

さくっとDockerでMongoDB起動ついでに永続化

DockerMongoDBコンテナを起動するメモ。
ついでにlocalストレージに永続化する。
参照は、Docker公式

Dockerイメージのpull

mongodbのイメージpull

MongoDB本体

$ docker pull mongo

mongo-expressのイメージpull

phpMyAdminみたいなやつ。
MongoDBのデータ操作がブラウザでできる有り難いツール。

$ docker pull mongo-express

確認

mongomongo-expressのイメージが、TAG:latestで取得されていることが確認できる。(pull時にTAG指定しなかったため、defaultでlatest)

$ docker images -f reference='mongo*'
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
mongo-express       latest              6a1d1feed622        3 days ago          205MB
mongo               latest              87f1a6e84e00        4 days ago          368MB

docker-composeを利用する準備

docker-composeにてコンテナ起動を行う。
ファイル構成は下記のように。

$ tree
.
├── docker-compose.yml  // docker-compose設定ファイル
└── mongo_db            // MongoDBのデータを格納するフォルダ

docker-compose.yml

こんなかんじ

docker-compose.yml
version: '2'
services:
  mongo:
    image: mongo
    restart: always
    environment:
      MONGO_INITDB_ROOT_USERNAME: root
      MONGO_INITDB_ROOT_PASSWORD: root
    volumes:
      - ./mongo_db:/data/db
  mongo-express:
    image: mongo-express
    restart: always
    ports:
      - 8081:8081
    environment:
      ME_CONFIG_MONGODB_ADMINUSERNAME: root
      ME_CONFIG_MONGODB_ADMINPASSWORD: root

コンテナ起動

docker-compose.ymlがある階層にて。

$ docker-compose up

接続確認

ブラウザにて、http://localhost:8081/にアクセス。

スクリーンショット 2018-06-10 20.13.15.png