CentOS 7 dockerを使用してmongodyをインストール


一、ミラー引取
1.ミラーの検索
[root@localhost ~]# docker search mongodb
[root@localhost ~]# docker search mongodb
INDEX       NAME                                          DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
docker.io   docker.io/mongo                               MongoDB document databases provide high av...   6315      [OK]       
docker.io   docker.io/mongo-express                       Web-based MongoDB admin interface, written...   546       [OK]       
docker.io   docker.io/tutum/mongodb                       MongoDB Docker image – listens in port 270...   228                  [OK]
docker.io   docker.io/bitnami/mongodb                     Bitnami MongoDB Docker Image                    102                  [OK]
docker.io   docker.io/frodenas/mongodb                    A Docker Image for MongoDB                      17                   [OK]
docker.io   docker.io/centos/mongodb-32-centos7           MongoDB NoSQL database server                   8                    
docker.io   docker.io/centos/mongodb-26-centos7           MongoDB NoSQL database server                   5                    
docker.io   docker.io/centos/mongodb-36-centos7           MongoDB NoSQL database server                   4                    
docker.io   docker.io/eses/mongodb_exporter               mongodb exporter for prometheus                 4                    [OK]
docker.io   docker.io/webhippie/mongodb                   Docker images for MongoDB                       4                    [OK]
docker.io   docker.io/quadstingray/mongodb                MongoDB with Memory and User Settings           3                    [OK]
docker.io   docker.io/centos/mongodb-34-centos7           MongoDB NoSQL database server                   2                    
docker.io   docker.io/mongodbsap/mongodbdocker                                                            2                    
docker.io   docker.io/neowaylabs/mongodb-mms-agent        This Docker image with MongoDB Monitoring ...   2                    [OK]
docker.io   docker.io/ssalaues/mongodb-exporter           MongoDB Replicaset Prometheus Compatible M...   2                    
docker.io   docker.io/tozd/mongodb                        Base image for MongoDB server.                  2                    [OK]
docker.io   docker.io/zadki3l/mongodb-oplog               Simple mongodb image with single-node repl...   2                    [OK]
docker.io   docker.io/ansibleplaybookbundle/mongodb-apb   An APB to deploy MongoDB.                       1                    [OK]
docker.io   docker.io/openshift/mongodb-24-centos7        DEPRECATED: A Centos7 based MongoDB v2.4 i...   1                    
docker.io   docker.io/xogroup/mongodb_backup_gdrive       Docker image to create a MongoDB database ...   1                    [OK]
docker.io   docker.io/astronomerio/mongodb-source         Mongodb source.                                 0                    [OK]
docker.io   docker.io/gebele/mongodb                      mongodb                                         0                    [OK]
docker.io   docker.io/kardasz/mongodb                     MongoDB                                         0                    [OK]
docker.io   docker.io/phenompeople/mongodb                 MongoDB is an open-source, document datab...   0                    [OK]
docker.io   docker.io/targetprocess/mongodb_exporter      MongoDB exporter for prometheus                 0                    [OK]
[root@localhost ~]# 

2.ミラーの取得
[root@localhost ~]# docker pull mongo

3.mongo容器の起動
[root@localhost ~]# docker run --name mongodb -p 27017:27017 -d mongo --auth
[root@localhost ~]# docker run --name mongo-master -v /home/mongo:/etc/mongo -d mongo --config /home/mongo/comf/mongod.conf

-v:ホストの/home/monを
4.mongodbに入る
[root@localhost ~]# docker exec -it 51a5b5e05fe4 mongo admin

5.アカウント及びデータベースの作成
admin管理アカウントの作成
[root@localhost ~]# db.createUser({ user: 'root', pwd: '123456', roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] });

終了
exit

adminユーザーとしてmongoにアクセス
[root@localhost ~]# docker exec -it 51a5b5e05fe4 mongo admin

rootユーザーのアイデンティティ認証
db.auth("root","123456")

ユーザーchhqおよびデータベースtestの作成
db.createUser({ user: 'chhq', pwd: '123456', roles: [ { role: "readWrite", db: "test" } ] })

終了
exit

adminユーザーとしてmongoにアクセス
[root@localhost ~]# docker exec -it 51a5b5e05fe4 mongo admin

ユーザchhqに対するアイデンティティ認証
db.auth("chhq","123456")

データベースの切り替え
use test

データの追加
db.test.save({name:"zhangsan"});

ファイアウォールを閉じるとmongodb接続にリモートアクセスできるツールはRobo 3 Tがおすすめです