1、在docker宿主機構(gòu)建mongodb數(shù)據(jù)持久化目錄
# 數(shù)據(jù)文件
mkdir -p /usr/local/mongodb/data
# 日志文件
mkdir -p /usr/local/mongodb/log
2、拉取鏡像, 選擇官方版本(親測16.x版本的mongodb不可用,可安裝指定版本)
docker search mongo
docker pull mongo:latest // 拉取最新版
或
docker pull mongo:版本號// 拉取指定版本
3、基于鏡像創(chuàng)建容器并設(shè)置數(shù)據(jù)持久化
參數(shù)介紹
1、取容器名--name <image_name>
2、端口映射(宿主機端口:容器端口)-p <host_port>:<container_port>
或<host_ip>:<host_port>:<container_port>
3、將主機的目錄或文件掛載到容器-v <host_path>:<container_path>
4、在后臺(守護進程)模式下運行容器-d
5、以指定版本的鏡像創(chuàng)建容器鏡像名:版本號
6、在MongoDB容器中啟用身份驗證--auth
docker run --name mongo-01 -p 27017:27017 -v /usr/local/mongodb/data:/data/db -v /usr/local/mongodb/log:/data/log -d mongo:5.0.19 --auth
4、進入容器并啟動容器終端
docker exec -it mongo-01 /bin/bash
5、mongodb賬號密碼設(shè)置文章來源:http://www.zghlxwxcb.cn/news/detail-592662.html
// 進入mongo shell, 進入失敗可能是mongo版本有問題,換個低版本的鏡像再走一遍前面的流程,這里的版本是5.0.19
mongo
// 進入admin數(shù)據(jù)庫, 使用`use 數(shù)據(jù)庫名`,如果數(shù)據(jù)庫名不存在則會新建一個
use admin
// 創(chuàng)建超級權(quán)限r(nóng)oot角色的用戶,或者角色權(quán)限比較大的用戶
// 用戶名:slj, 密碼:sljpwd, 角色root
db.createUser({
user: "slj",
pwd: "sljpwd",
roles: [
{ role: "root", db: "數(shù)據(jù)庫名" }, // db不設(shè)置將應(yīng)用于所有數(shù)據(jù)庫
// 其他角色...
] 或 roles: ['root']
})
// 驗證用戶名和密碼是否設(shè)置成功, 打印1則代表認(rèn)證通過
// db.auth('用戶名', '密碼')
db.auth('slj','sljpwd')
6、退出shell使用exit
文章來源地址http://www.zghlxwxcb.cn/news/detail-592662.html
到了這里,關(guān)于docker+mongodb設(shè)置數(shù)據(jù)庫的賬號和密碼的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!