docker使用mongodb的方法

這篇文章將為大家詳細(xì)講解有關(guān)docker使用MongoDB的方法,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

專(zhuān)注于為中小企業(yè)提供成都網(wǎng)站建設(shè)、成都做網(wǎng)站服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)青山免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了上1000家企業(yè)的穩(wěn)健成長(zhǎng),幫助中小企業(yè)通過(guò)網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

介紹如何在docker中使用MongoDB。

如果你是一名MongoDB的初學(xué)者,那么你入門(mén)MongoDB的第一件事就是安裝MongoDB,但是安裝MongoDB又不是一件簡(jiǎn)單的事情,還需要自己配置一些服務(wù)。這時(shí)候,docker就能幫上大忙,它能夠讓你不需要本地安裝MongoDB就能使用MongoDB。下面讓我們來(lái)看看這是怎么實(shí)現(xiàn)的。

首先你的電腦上需要安裝docker,然后在docker的鏡像中查詢(xún)MongoDB的鏡像,命令如下:

docker search mongodb

輸出的結(jié)果如下:

NAME                             DESCRIPTION                             STARS       OFFICIAL
AUTOMATED
mongo                       MongoDB document databases provide high avai…    5606        [OK]
mongo-express                  Web-based MongoDB admin interface, written w…   386         [OK]
tutum/mongodb                  MongoDB Docker image – listens in port 27017…   224         [OK]
bitnami/mongodb                 Bitnami MongoDB Docker Image                83         [OK]
percona/percona-server-mongodb       Percona Server for MongoDB docker images        23
frodenas/mongodb                A Docker Image for MongoDB                 17         [OK]
centos/mongodb-32-centos7          MongoDB NOSQL database server                5
centos/mongodb-26-centos7          MongoDB NoSQL database server                5
eses/mongodb_exporter             mongodb exporter for prometheus               4         [OK]
centos/mongodb-36-centos7          MongoDB NoSQL database server                4
quadstingray/mongodb             MongoDB with Memory and User Settings           3         [OK]
bigtruedata/php-mongodb           PHP image with MongoDB support                2         [OK]
neowaylabs/mongodb-mms-agent        This Docker image with MongoDB Monitoring Ag…     2         [OK]
tozd/mongodb                   Base image for MongoDB server.               2         [OK]
nuxeoapbcatalog/nuxeo-mongodb-apb     MongoDB deployment for Nuxeo                 1         [OK]
openshift/mongodb-24-centos7        DEPRECATED: A Centos7 based MongoDB v2.4 ima…     1
centos/mongodb-34-centos7          MongoDB NoSQL database server                1
webhippie/mongodb               Docker images for mongodb                   1         [OK]
perconalab/percona-server-mongodb-operator  MOVED TO https://hub.docker.com/r/perconalab… 1
phenompeople/mongodb             MongoDB is an open-source, document databas…      0         [OK]
gebele/mongodb                 mongodb                               0         [OK]
mongodbsap/mongodbdocker                                              0
targetprocess/mongodb_exporter       MongoDB exporter for prometheus               0         [OK]
ansibleplaybookbundle/mongodb-apb     An APB to deploy MongoDB.                   0         [OK]
xogroup/mongodb_backup_gdrive       Docker image to create a MongoDB database ba…     0         [OK]

我們?cè)谶@些鏡像中選擇使用第一個(gè)鏡像,即mongo, 拉取mongo鏡像,命令如下:

docker pull mongo

查看該鏡像的信息:

docker images mongo

輸出的結(jié)果如下:

REPOSITORY     TAG         IMAGE ID      CREATED     SIZE
mongo        latest      0da05d84b1fe    2 weeks ago    394MB

現(xiàn)在,在docker中已經(jīng)存在MongoDB的鏡像mongo,接下來(lái)我們將使用這個(gè)鏡像。輸入命令:

docker run -p 27000:27017 -v $PWD/db:/data/db -d mongo:latest

其中, -p 參數(shù)為端口映射,格式為:主機(jī)(宿主)端口:容器端口,-v參數(shù)為數(shù)據(jù)卷掛載,將主機(jī)的目錄$PWD/db 映射到容器的 /data/db,這是為了存儲(chǔ)MongoDB操作時(shí)的數(shù)據(jù),-d參數(shù)表示后臺(tái)運(yùn)行。

接著輸入以下命令查詢(xún)正在運(yùn)行的docker容器:

docker ps

輸出如下:

CONTAINER ID  IMAGE      COMMAND            CREATED     STATUS     PORTS           NAMES
9664a5056e78  mongo:latest "docker-entrypoint.s…" 3 seconds ago Up 2 seconds 0.0.0.0:27017->27017/tcp
nervous_heyrovsky

接著運(yùn)行以下命令,即可使用docker中的虛擬機(jī),該虛擬機(jī)已幫你安裝好MongoDB,可以直接使用:

docker exec -it 9664a5056e78 bash

在虛擬機(jī)中輸入mongo ,界面如下:

docker使用mongodb的方法

以下將展示一些MongoDB的基礎(chǔ)操作,具體的入門(mén)教程可以參考:https://blog.csdn.net/jclian91/article/details/78654274 。

顯示數(shù)據(jù)庫(kù):

> show dbs
admin   0.000GB
config   0.000GB
local   0.000GB

創(chuàng)建新數(shù)據(jù)庫(kù)及集合:

> use school
switched to db school
> db.createCollection('teacher')
{ "ok" : 1 }
> show dbs
admin   0.000GB
config  0.000GB
local   0.000GB
school  0.000GB

往集合中插入新文檔:

> db.teacher.insert({id:1,name:'zhangshan',age:38})
WriteResult({ "nInserted" : 1 })
> db.teacher.insert({id:2,name:'lisi',age:47})
WriteResult({ "nInserted" : 1 })
> db.teacher.insert({id:3,name:'wangwu',age:26})
WriteResult({ "nInserted" : 1 })

查詢(xún)文檔:

> db.teacher.count()
3
> db.teacher.find()
{ "_id" : ObjectId("5c6d12d880b47c18564d99a7"), "id" : 1, "name" : "zhangshan", "age" : 38 }
{ "_id" : ObjectId("5c6d12df80b47c18564d99a8"), "id" : 2, "name" : "lisi", "age" : 47 }
{ "_id" : ObjectId("5c6d12e580b47c18564d99a9"), "id" : 3, "name" : "wangwu", "age" : 26 }
> db.teacher.find({name: 'lisi'})
{ "_id" : ObjectId("5c6d12df80b47c18564d99a8"), "id" : 2, "name" : "lisi", "age" : 47 }

此時(shí),在MongoDB的可視化軟件Robo 3T中,依然能夠看到我們插入的數(shù)據(jù),只是連接的端口改為27000,如下圖:

docker使用mongodb的方法

關(guān)于docker使用mongodb的方法就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。

文章題目:docker使用mongodb的方法
文章轉(zhuǎn)載:http://bm7419.com/article46/igcoeg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)建站網(wǎng)站營(yíng)銷(xiāo)、App設(shè)計(jì)、App開(kāi)發(fā)動(dòng)態(tài)網(wǎng)站、做網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)