摘要:本文將介紹如何在中使用。如果你是一名的初學(xué)者,那么你入門的第一件事就是安裝,但是安裝又不是一件簡單的事情,還需要自己配置一些服務(wù)。這時(shí)候,就能幫上大忙,它能夠讓你不需要本地安裝就能使用。下面讓我們來看看這是怎么實(shí)現(xiàn)的。
??本文將介紹如何在docker中使用MongoDB。
??如果你是一名MongoDB的初學(xué)者,那么你入門MongoDB的第一件事就是安裝MongoDB,但是安裝MongoDB又不是一件簡單的事情,還需要自己配置一些服務(wù)。這時(shí)候,docker就能幫上大忙,它能夠讓你不需要本地安裝MongoDB就能使用MongoDB。下面讓我們來看看這是怎么實(shí)現(xiàn)的。
??首先你的電腦上需要安裝docker,然后在docker的鏡像中查詢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,接下來我們將使用這個(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)行。
??接著輸入以下命令查詢正在運(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 ,界面如下:
??以下將展示一些MongoDB的基礎(chǔ)操作,具體的入門教程可以參考:https://blog.csdn.net/jclian9... 。
??顯示數(shù)據(jù)庫:
> show dbs admin 0.000GB config 0.000GB local 0.000GB
??創(chuàng)建新數(shù)據(jù)庫及集合:
> 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 })
??查詢文檔:
> 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,如下圖:
??本次介紹完畢,感謝大家閱讀~
注意:本人現(xiàn)已開通微信公眾號(hào): Python爬蟲與算法(微信號(hào)為:easy_web_scrape), 歡迎大家關(guān)注哦~~
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/27677.html
摘要:下面給出了其中幾個(gè)子命令。將指定名稱的容器拉取到系統(tǒng)中。列出正在運(yùn)行的容器。起初只是之上的一個(gè)軟件層但現(xiàn)在已經(jīng)演化成為一個(gè)獨(dú)立的系統(tǒng)。服務(wù)器的主要配置文件位于和參考從構(gòu)建鏡像命令的用法 檢查安裝情況 centos7下 // 刪除舊版本和相關(guān)依賴 yum remove docker docker-client d...
摘要:容器訪問以為例,在原始的文件中,如下上面的配置,本地主機(jī)是無法訪問容器的,我們至少需要暴露出一個(gè)端口。查看,的默認(rèn)端口其實(shí)是,而這里寫成也是有原因的。 任何事情的成功都需要掐準(zhǔn)時(shí)間 上一節(jié)mongo EOF中,關(guān)于容器的配置,只是粗略的使用了Docker-Compose-MongoDB-Replica-Set項(xiàng)目提供好的docker-compose.yml文件。在使用過程中,我發(fā)現(xiàn)這個(gè)...
摘要:今天整理了一下近大半年以來的一些文章,和我的預(yù)期一樣,很多文章我都忘記自己曾經(jīng)寫過了,這個(gè)記錄的過程讓我也有了新的理解。希望大家,收藏,點(diǎn)贊,加轉(zhuǎn)發(fā)。 今天整理了一下近大半年以來的一些文章,和我的預(yù)期一樣,很多文章我都忘記自己曾經(jīng)寫過了,這個(gè)記錄的過程讓我也有了新的理解。希望大家,收藏,點(diǎn)贊,加轉(zhuǎn)發(fā)。 面試必備 面試必備:深入Spring MVC DispatchServlet 源碼...
摘要:今天整理了一下近大半年以來的一些文章,和我的預(yù)期一樣,很多文章我都忘記自己曾經(jīng)寫過了,這個(gè)記錄的過程讓我也有了新的理解。希望大家,收藏,點(diǎn)贊,加轉(zhuǎn)發(fā)。 今天整理了一下近大半年以來的一些文章,和我的預(yù)期一樣,很多文章我都忘記自己曾經(jīng)寫過了,這個(gè)記錄的過程讓我也有了新的理解。希望大家,收藏,點(diǎn)贊,加轉(zhuǎn)發(fā)。 面試必備 面試必備:深入Spring MVC DispatchServlet 源碼...
摘要:本文旨在通過將一個(gè)具體的項(xiàng)目進(jìn)行化處理,從而對(duì)的基本用法進(jìn)行一次實(shí)踐。該項(xiàng)目化后,后端服務(wù)訪問數(shù)據(jù)庫正常,仍然可以打開后端服務(wù)托管的單頁應(yīng)用,總之項(xiàng)目運(yùn)行狀態(tài)符合預(yù)期。 本文旨在通過將一個(gè)具體的 Spring Boot + MongoDB 項(xiàng)目進(jìn)行 Docker 化處理,從而對(duì) Docker 的基本用法進(jìn)行一次實(shí)踐。該項(xiàng)目 Docker 化后,后端服務(wù)訪問數(shù)據(jù)庫正常,仍然可以打開后端服...
閱讀 690·2021-09-30 09:47
閱讀 2881·2021-09-04 16:40
閱讀 869·2019-08-30 13:18
閱讀 3461·2019-08-29 16:22
閱讀 1566·2019-08-29 12:36
閱讀 597·2019-08-29 11:11
閱讀 1486·2019-08-26 13:47
閱讀 1139·2019-08-26 13:32