本文將介紹如何在Docker中使用官方的MongoDB鏡像創(chuàng)建一個(gè)帶有賬戶權(quán)限的容器,并提供詳細(xì)的步驟和命令
在使用Docker進(jìn)行應(yīng)用容器化時(shí),有時(shí)需要為MongoDB數(shù)據(jù)庫設(shè)置賬戶權(quán)限以保障數(shù)據(jù)的安全性。
那么應(yīng)該如何使用官方的MongoDB鏡像,在Docker中創(chuàng)建一個(gè)帶有賬戶權(quán)限的MongoDB容器。請查看以下步驟
步驟一:拉取官方的MongoDB鏡像
運(yùn)行以下命令將下載并pull官方的MongoDB鏡像:
docker pull mongo
步驟二:運(yùn)行不帶--auth參數(shù)的容器
運(yùn)行以下命令,,將MongoDB容器運(yùn)行起來,將/data/db目錄映射到您想要存儲數(shù)據(jù)的位置,并將端口號27017映射到所需的端口。
注:不帶--auth 把容器run起來
docker run -d -p 27017:27017 -v /your/desired/data/directory:/data/db mongo
步驟三:進(jìn)入容器并設(shè)置賬戶權(quán)限
按照以下順序運(yùn)行命令:
步驟3-0:進(jìn)入容器的bash終端
docker exec -it <container_id> /bin/bash
步驟3-1:連接到MongoDB
mongo
步驟3-2:切換到admin數(shù)據(jù)庫
use admin
步驟3-3:創(chuàng)建管理員用戶
db.createUser({ user: "admin", pwd: "xxxxxx", roles: [{ role: "userAdminAnyDatabase", db: "admin" }] })
步驟3-4:驗(yàn)證管理員用戶(可選)
db.auth("admin", "上面的密碼")
步驟3-5:切換到其他要添加賬戶信息的數(shù)據(jù)庫
use 其他要添加賬戶信息的數(shù)據(jù)庫名
步驟3-6:創(chuàng)建數(shù)據(jù)庫賬戶
db.createUser({ user: "username", pwd: "password", roles: [{ role: "readWrite", db: "其他要添加賬戶信息的數(shù)據(jù)庫名" }] })
步驟四:刪除容器
可以使用以下命令刪除容器:
docker stop <container_id> docker rm <container_id>
步驟五:創(chuàng)建帶--auth參數(shù)的容器
為了啟用賬戶權(quán)限,創(chuàng)建一個(gè)新的MongoDB容器,并帶有--auth參數(shù)。使用與步驟二相同的映射設(shè)置運(yùn)行以下命令:
docker run -d -p 27017:27017 -v /your/desired/data/directory:/data/db --name mongodb_auth mongo --auth
步驟六:啟動容器并訪問數(shù)據(jù)庫
可以使用以下格式訪問具有賬戶權(quán)限的MongoDB數(shù)據(jù)庫:
mongodb://賬戶:密碼@host:27017/數(shù)據(jù)庫名
步驟七:設(shè)置MongoDB隨系統(tǒng)啟動
如果需要MongoDB容器隨系統(tǒng)啟動自動運(yùn)行,可以使用以下命令:
docker update --restart=always <容器ID 或 容器名稱>
如何追加新數(shù)據(jù)庫
如需在現(xiàn)有容器中追加新的數(shù)據(jù)庫,只需重復(fù)步驟3-1、3-2、3-3(跳過步驟)、3-4、3-5和3-6即可。
通過以上步驟,您可以在Docker中創(chuàng)建一個(gè)帶有賬戶權(quán)限的MongoDB容器,并保障數(shù)據(jù)庫的安全性。文章來源:http://www.zghlxwxcb.cn/article/530.html
本文關(guān)鍵詞:Docker, MongoDB, 容器, 賬戶權(quán)限, 設(shè)置文章來源地址http://www.zghlxwxcb.cn/article/530.html
到此這篇關(guān)于如何在Docker中設(shè)置帶賬戶權(quán)限的MongoDB容器的文章就介紹到這了,更多相關(guān)內(nèi)容可以在右上角搜索或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!