docker composeを使ってMongoDBを構築する

docker composeを使ってMongoDBを構築する

docker composeを使ってMongoDBとwebの管理ツールMongo Expressを構築するまでの手順を記述してます。

環境

  • OS ubuntu20.10
  • docker 19.03.13
  • docker-compose 1.27.4

docker-compose.yml作成

以下の内容で作成します。

version: '3'

services:
  mongo:
    image: mongo:latest
    restart: always
    environment:
        MONGO_INITDB_ROOT_USERNAME: root
        MONGO_INITDB_ROOT_PASSWORD: password123
    ports:
      - 27017:27017
    volumes:
      - mongo:/data/db
      - mongo:/data/configdb

  mongo-express:
    image: mongo-express
    restart: always
    ports:
      - 8081:8081
    environment:
      ME_CONFIG_MONGODB_SERVER: mongo
      ME_CONFIG_MONGODB_PORT: 27017
      ME_CONFIG_MONGODB_ADMINUSERNAME: root
      ME_CONFIG_MONGODB_ADMINPASSWORD: password123
    depends_on:
      - mongo

volumes:
  mongo:

実行

実行します。

docker-compose up -d

Mongo Express起動

ブラウザから http://プライベートIP or サーバーアドレス:8081 にアクセスします。

直接コンテナに入って、操作することも可能です。

docker exec -it mongo_mongo_1 bash

root@a0c7d2820eb7:/# mongo

MongoDB shell version v4.4.2
connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("2b86788e-cf80-437a-8e03-762654b827fb") }
MongoDB server version: 4.4.2
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see
        https://docs.mongodb.com/
Questions? Try the MongoDB Developer Community Forums
        https://community.mongodb.com
>