docker創(chuàng)建mongodb數(shù)據(jù)庫容器的方法
介紹
本文將通過docker創(chuàng)建一個(gè)mongodb數(shù)據(jù)庫容器
1. 拉取mongo鏡像
docker pull mongo:3.6
3.6版本是一個(gè)穩(wěn)定的版本,可以選擇安裝此版本。
2. 創(chuàng)建并啟動(dòng)主數(shù)據(jù)庫 容器數(shù)據(jù)卷配置
/docker/mongodb/master/data # 數(shù)據(jù)庫數(shù)據(jù)目錄(宿主機(jī)) /docker/mongodb/master/dump # 備份數(shù)據(jù)目錄(宿主機(jī))
創(chuàng)建并運(yùn)行容器
docker run --name mongodb-master -d -p 27017:27017 -v /docker/mongodb/master/data:/data/db -v /docker/mongodb/master/dump:/var/dump -d mongo:3.6 --auth
–auth 表示開啟授權(quán)訪問。默認(rèn)不開啟,即不需要用戶名密碼就可以連接數(shù)據(jù)庫,這樣會(huì)有安全風(fēng)險(xiǎn),切記要開啟。
開啟授權(quán)訪問之后,需數(shù)據(jù)庫創(chuàng)建用戶和密碼。
進(jìn)入容器,并連接容器
docker exec -it <container_id> /bin/bash mongo # 此時(shí)不需要用戶名

4. 創(chuàng)建用戶
use admin
db.createUser({
user:"root",
pwd:"123456",
roles:[{
role:'root',
db:'admin'
}]
})
退出并連接該數(shù)據(jù)庫,需輸入密碼
mongo 127.0.0.1/admin -u root -p

連接mongodb的url
未開啟授權(quán)驗(yàn)證時(shí) mongodb://127.0.0.1:27017 開啟授權(quán)驗(yàn)證時(shí) mongodb://user:passwd@127.0.0.1:27017/dbname
使用pymongo進(jìn)行測(cè)試
import pymongo
myclient = pymongo.MongoClient("mongodb://root:123456@localhost:27017/")
#新建數(shù)據(jù)庫
mydb = myclient["runoobdbs"]
dblist = myclient.list_database_names() #list_database_names()獲取數(shù)據(jù)庫名
print(dblist)
if "runoobdbs" in dblist:
print("數(shù)據(jù)庫已存在!")
#創(chuàng)建集合
mycol = mydb["sites"]
collist = mydb.list_collection_names() #獲取集合名
if "sites" in collist: # 判斷 sites 集合是否存在
print("集合已存在!")
#插入文檔
mydict = {"name": "RUNOOB", "alexa": "10000", "url": "https://www.runoob.com"}
x = mycol.insert_one(mydict)
print(x)
dblist = myclient.list_database_names() #list_database_names()獲取數(shù)據(jù)庫名
print(dblist)參考鏈接:
https://blog.csdn.net/weixin_34100227/article/details/88731125
http://www.fzitv.net/python/285339367.htm
到此這篇關(guān)于docker創(chuàng)建mongodb數(shù)據(jù)庫容器的文章就介紹到這了,更多相關(guān)docker mongodb數(shù)據(jù)庫容器內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
使用Docker快速搭建Redis主從復(fù)制的完整步驟
在現(xiàn)代應(yīng)用程序中,Redis憑借其高性能和簡便的數(shù)據(jù)結(jié)構(gòu)被廣泛使用,為了提高數(shù)據(jù)的可用性和可靠性,很多時(shí)候我們需要在Redis中配置主從架構(gòu),這篇文章主要介紹了使用Docker快速搭建Redis主從復(fù)制的完整步驟,需要的朋友可以參考下2026-01-01
使用Docker Swarm部署高可用集群的詳細(xì)步驟
Docker Swarm 是 Docker 原生的集群管理工具,可以輕松地將多個(gè) Docker 主機(jī)組成一個(gè)集群,實(shí)現(xiàn)服務(wù)的高可用性和負(fù)載均衡,以下是詳細(xì)的部署步驟,需要的朋友可以參考下2025-07-07
用Docker搭建nextcloud個(gè)人網(wǎng)盤教程
大家好,本篇文章主要講的是用Docker搭建nextcloud個(gè)人網(wǎng)盤教程,感興趣的同學(xué)趕快來看一看吧,對(duì)你有幫助的話記得收藏一下2021-12-12
利用docker搭建LAMP運(yùn)行環(huán)境教程詳解
LAMP相信對(duì)大家來說都不陌生, Docker是一個(gè)開源的引擎,可以輕松的為任何應(yīng)用創(chuàng)建一個(gè)輕量級(jí)的、可移植的、自給自足的容器,所以這篇文章給大家介紹利用docker快速搭建LAMP運(yùn)行環(huán)境的方法,有需要的朋友們可以參考借鑒,下面來一起看看吧。2016-10-10

