MongoDB 是一個(gè)免費(fèi)的開(kāi)源跨平臺(tái)面向文檔的 NoSQL 數(shù)據(jù)庫(kù)程序。
訪問(wèn) MongoDB 鏡像庫(kù)地址: https://hub.docker.com/_/mongo?tab=tags&page=1。
可以通過(guò) Sort by 查看其他版本的 MongoDB,默認(rèn)是最新版本 mongo:latest。
你也可以在下拉列表中找到其他你想要的版本:
此外,我們還可以用 docker search mongo 命令來(lái)查看可用版本:
$ docker search mongo NAME DESCRIPTION STARS OFFICIAL AUTOMATED mongo MongoDB document databases ... 1989 [OK] mongo-express Web-based MongoDB admin int... 22 [OK] mvertes/alpine-mongo light MongoDB container 19 [OK] mongooseim/mongooseim-docker MongooseIM server the lates... 9 [OK] torusware/speedus-mongo Always updated official Mon... 9 [OK] jacksoncage/mongo Instant MongoDB sharded cluster 6 [OK] mongoclient/mongoclient Official docker image for M... 4 [OK] jadsonlourenco/mongo-rocks Percona Mongodb with Rocksd... 4 [OK] asteris/apache-php-mongo Apache2.4 + PHP + Mongo + m... 2 [OK] 19hz/mongo-container Mongodb replicaset for coreos 1 [OK] nitra/mongo Mongo3 centos7 1 [OK] ackee/mongo MongoDB with fixed Bluemix p... 1 [OK] kobotoolbox/mongo https://github.com/kobotoolb... 1 [OK] valtlfelipe/mongo Docker Image based on the la... 1 [OK]
這里我們拉取官方的最新版本的鏡像:
$ docker pull mongo:latest
使用以下命令來(lái)查看是否已安裝了 mongo:
$ docker images
在上圖中可以看到我們已經(jīng)安裝了最新版本(latest)的 mongo 鏡像。
安裝完成后,我們可以使用以下命令來(lái)運(yùn)行 mongo 容器:
$ docker run -itd --name mongo -p 27017:27017 mongo --auth
參數(shù)說(shuō)明:
-p 27017:27017 :映射容器服務(wù)的 27017 端口到宿主機(jī)的 27017 端口。外部可以直接通過(guò) 宿主機(jī) ip:27017 訪問(wèn)到 mongo 的服務(wù)。
--auth:需要密碼才能訪問(wèn)容器服務(wù)。
最后我們可以通過(guò) docker ps 命令查看容器的運(yùn)行信息:
接著使用以下命令添加用戶(hù)和設(shè)置密碼,并且嘗試連接。
$ docker exec -it mongo mongo admin # 創(chuàng)建一個(gè)名為 admin,密碼為 123456 的用戶(hù)。 > db.createUser({ user:'admin',pwd:'123456',roles:[ { role:'userAdminAnyDatabase', db: 'admin'},"readWriteAnyDatabase"]}); # 嘗試使用上面創(chuàng)建的用戶(hù)信息進(jìn)行連接。 > db.auth('admin', '123456')