濮阳杆衣贸易有限公司

主頁(yè) > 知識(shí)庫(kù) > 如何使用Docker安裝一個(gè)MongoDB最新版

如何使用Docker安裝一個(gè)MongoDB最新版

熱門(mén)標(biāo)簽:呼和浩特外呼系統(tǒng)原理是什么 青白江400企業(yè)電話(huà)申請(qǐng) crm外呼系統(tǒng)聯(lián)系方式 外呼線(xiàn)路資源屬于電信業(yè)務(wù)嗎 小裙科技電銷(xiāo)機(jī)器人怎樣 河南電話(huà)外呼系統(tǒng)招商 長(zhǎng)沙電銷(xiāo)外呼防封卡是什么 內(nèi)蒙古營(yíng)銷(xiāo)智能外呼系統(tǒng)哪個(gè)好 智能外呼系統(tǒng)官網(wǎng)

1 安裝

本文假設(shè)大家已經(jīng)安裝好了docker并能正常使用,所以不講解如何安裝docker了。用docker安裝MongoDB最新版本如下:

# 從repository查找mongo的相關(guān)鏡像,結(jié)果很多,其中第一條為官方的鏡像
$ docker search mongo
# 下載官方鏡像的最新版本
$ docker pull mongo:latest
# 完成后,檢查是否下載成功
$ docker images
REPOSITORY   TAG     IMAGE ID   CREATED    SIZE
centos    7     5e35e350aded  12 days ago   203MB
mongo    latest    965553e202a4  3 weeks ago   363MB
hello-world   latest    fce289e99eb9  10 months ago  1.84kB

僅需要簡(jiǎn)單幾個(gè)命令,我們就擁有了MongoDB的最新鏡像了,后續(xù)就可以使用了。

2 啟動(dòng)

完成MongoDB的鏡像下載后,啟動(dòng)就非常簡(jiǎn)單了,一個(gè)命令即可:

$ docker run -itd --name mongo -p 27017:27017 mongo --auth
305ebd8236678905d16dd76e75dcf99fdd812be6b13c240acece7985d29b316c

(1)--name后面的參數(shù)為docker容器名;

(2)-p后面是端口映射,即宿主端口:容器端口;

(3)--auth是否開(kāi)始鑒權(quán),如果不想開(kāi)啟可以去掉;

成功啟動(dòng)MongoDB一個(gè)實(shí)例后,會(huì)返回容器ID,如305ebd8236678905d16dd76e75dcf99fdd812be6b13c240acece7985d29b316c。

通過(guò)命令docker ps可以查看正在運(yùn)行的容器,經(jīng)過(guò)檢查,確實(shí)已經(jīng)起來(lái)了。

注意:默認(rèn)數(shù)據(jù)是存在容器系統(tǒng)的/data/db目錄下的,如果需要使用自定義的宿主機(jī)器目錄,可以在啟動(dòng)命令加上參數(shù):

-v /my/own/datadir:/data/db

3 創(chuàng)建用戶(hù)與集合

3.1 進(jìn)入容器

容器起來(lái)后,下一步是進(jìn)入容器:

# 進(jìn)入容器可以用以下兩種方法
# 分別是通過(guò)容器名和容器ID
$ docker exec -it mongo bash
$ docker exec -it 305ebd823667 bash

上面進(jìn)入容器后,其實(shí)是進(jìn)入了容器的系統(tǒng),并打開(kāi)bash。

3.2 通過(guò)客戶(hù)端命令連接數(shù)據(jù)庫(kù)

接著通過(guò)mongo命令連接到MongoDB的數(shù)據(jù)庫(kù)服務(wù)。

# 默認(rèn)連接本地的27017端口的MongoDB
$ mongo
# 指定IP與端口進(jìn)行連接
$ mongo 127.0.0.1:27017
# 指定用戶(hù)名和密碼連接到指定的MongoDB數(shù)據(jù)庫(kù)
$ mongo 127.0.0.1:27017/admin -u user -p password

連接數(shù)據(jù)庫(kù)成功后,會(huì)返回一些信息,如SeesionID和版本號(hào)等。

3.3 查看版本

(1)在linux命令通過(guò)mongo --version查詢(xún);

(2)連接上數(shù)據(jù)庫(kù)后,通過(guò)db.version()查詢(xún)。

root@305ebd823667:/# mongo --version
MongoDB shell version v4.2.1
git version: edf6d45851c0b9ee15548f0f847df141764a317e
OpenSSL version: OpenSSL 1.1.1 11 Sep 2018

root@305ebd823667:/# mongo
> db.version()
4.2.1

3.4 創(chuàng)建admin管理用戶(hù)

連上數(shù)據(jù)庫(kù)后,我們先創(chuàng)建一個(gè)admin用戶(hù),用以管理其它用戶(hù):

> use admin
switched to db admin
> db.createUser({ user:'admin',pwd:'123456',roles:[ { role:'userAdminAnyDatabase', db: 'admin'}]});
Successfully added user: {
	"user" : "admin",
	"roles" : [
		{
			"role" : "userAdminAnyDatabase",
			"db" : "admin"
		}
	]
}
> 

3.5 創(chuàng)建具有讀寫(xiě)權(quán)限的用戶(hù)

根據(jù)業(yè)務(wù)需求,創(chuàng)建不用的用戶(hù),如下面創(chuàng)建擁有讀寫(xiě)權(quán)限的用戶(hù)user:

> db.auth('admin','123456');
1
> db.createUser({ user:'user',pwd:'123456',roles:[ { role:'readWrite', db: 'testdb'}]});
Successfully added user: {
	"user" : "user",
	"roles" : [
		{
			"role" : "readWrite",
			"db" : "testdb"
		}
	]
}
> 

3.6 認(rèn)證用戶(hù)并操作

> db.auth('user','123456')
1
> use testdb
switched to db testdb
> 
> db.person.insert({name:'Larry',age:18})
WriteResult({ "nInserted" : 1 })
> db.person.find({})
{ "_id" : ObjectId("5ddaa14edbbac3c4f844366c"), "name" : "Larry", "age" : 18 }
> 

4 兩款優(yōu)秀的可視化工具

通過(guò)前面的操作,我們已經(jīng)建立了用戶(hù),并嘗試創(chuàng)建了數(shù)據(jù)庫(kù)和集合。但通過(guò)命令行來(lái)操作總是不那么方便,我們需要可視化軟件來(lái)進(jìn)行操作。下面將介紹兩款優(yōu)秀的可視化軟件,展示如何連接。如何進(jìn)行CRUD等操作就不一一介紹了,還是比較友好的,容易使用。

4.1 Robo3T

官網(wǎng)

創(chuàng)建連接:

注意下面填的是鑒權(quán)數(shù)據(jù)庫(kù),而不是用戶(hù)的數(shù)據(jù)庫(kù):

操作界面:

4.2 IDEA Mongo Plugin

GitHub官網(wǎng)

這個(gè)是支持JetBrains全系列軟件的插件,IDEA當(dāng)然也可以安裝。

連接設(shè)置:

注意下面的User Database是該用戶(hù)下的數(shù)據(jù)庫(kù),寫(xiě)錯(cuò)了會(huì)連不上。

注意下面Auth Database為鑒權(quán)的數(shù)據(jù)庫(kù),默認(rèn)為admin。

操作界面:

總結(jié)

本文介紹了通過(guò)Docker安裝最新版的MongoDB,并通過(guò)例子演示了如何運(yùn)行和創(chuàng)建用戶(hù)與集合,最后還介紹了兩款非常友好的可視化工具,希望能帶沒(méi)有接觸過(guò)的人入個(gè)門(mén)吧。

您可能感興趣的文章:
  • Docker 搭建集群MongoDB的實(shí)現(xiàn)步驟
  • Docker容器化部署嘗試——多容器通信(node+mongoDB+nginx)
  • docker中使用mongodb數(shù)據(jù)庫(kù)詳解(在局域網(wǎng)訪(fǎng)問(wèn))
  • 基于Docker的MongoDB實(shí)現(xiàn)授權(quán)訪(fǎng)問(wèn)的方法
  • Docker 部署 MongoDB容器的方法

標(biāo)簽:呼倫貝爾 舟山 安順 白山 池州 菏澤 楚雄 黃石

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《如何使用Docker安裝一個(gè)MongoDB最新版》,本文關(guān)鍵詞  如何,使用,Docker,安裝,一個(gè),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《如何使用Docker安裝一個(gè)MongoDB最新版》相關(guān)的同類(lèi)信息!
  • 本頁(yè)收集關(guān)于如何使用Docker安裝一個(gè)MongoDB最新版的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    永宁县| 东乡| 额尔古纳市| 中卫市| 阳城县| 孝义市| 太原市| 昌平区| 永清县| 和硕县| 天镇县| 桦甸市| 务川| 浠水县| 偏关县| 澄城县| 华阴市| 永修县| 恭城| 石楼县| 区。| 闽清县| 南木林县| 榆社县| 六盘水市| 富平县| 米脂县| 鄂温| 陵川县| 马公市| 榆树市| 宝兴县| 桓仁| 藁城市| 巴中市| 攀枝花市| 泰来县| 兴国县| 乳山市| 凌源市| 于都县|