docker pull docker.io/mongo:latest
docker run --name mongo -p 27017
:27017
-d docker.io/mongo:latest --auth
#首先建立資料夾用於掛載目錄
mkdir -p /docker/mongo/
#賦予許可權
chmod 777 /docker/mongo/conf
chmod 777 /docker/mongo/data
#然後直接啟動容器
docker run --name mongo -d \
-p 27018:27017 \
--privileged=true \
-v /docker/mongo/data:/data/db \
docker.io/mongo:latest \
--auth
#首先建立資料夾用於掛載目錄
mkdir -p /docker/mongo/
#賦予許可權
chmod 777 /docker/mongo/conf
chmod 777 /docker/mongo/data
#新建配置檔案
echo "
port=27018
auth=true" > /docker/mongo/conf/mongo.conf
#我們此處更換埠並且開啟驗證
#然後直接啟動容器,注意此處後面執行mongod命令表示執行容器內部的配置檔案,所以根據掛載檔案再執行容器內部的路徑
docker run --name mongo -d \
-p 27018:27018 \
--privileged=true \
-v /docker/mongo/conf:/data/configdb \
-v /docker/mongo/data:/data/db \
docker.io/mongo:latest mongod -f /data/configdb/mongo.conf
#-----進入容器
docker exec -it mongo bash
#-----進入mongo
mongo --port 27018
#-----選中admin資料庫
use admin
#-----建立使用者,root使用者
db.createuser(]}
)#-----退出mongo
exit
首先建立資料庫,如果有則選中如果沒有則建立
use admin
輸入admin資料庫使用者名稱密碼然後建立使用者
user為使用者名稱,pwd為使用者密碼,role為角色,db為資料庫
use nlp
db.createuser(]})
然後需要認證登入
use nlp
db.auth(
'nlp'
,'nlp'
)db.createuser(]})
1. 資料庫使用者角色:read、readwrite;
2. 資料庫管理角色:dbadmin、dbowner、useradmin;
3. 集群管理角色:clusteradmin、clustermanager、clustermonitor、hostmanager;
4. 備份恢復角色:backup、restore;
5. 所有資料庫角色:readanydatabase、readwriteanydatabase、useradminanydatabase、dbadminanydatabase
6. 超級使用者角色:root
// 這裡還有幾個角色間接或直接提供了系統超級使用者的訪問(dbowner 、useradmin、useradminanydatabase)
7. 內部角色:__system
read:允許使用者讀取指定資料庫
readwrite:允許使用者讀寫指定資料庫
dbadmin:允許使用者在指定資料庫中執行管理函式,如索引建立、刪除,檢視統計或訪問system.profile
useradmin:允許使用者向system.users集合寫入,可以找指定資料庫裡建立、刪除和管理使用者
readanydatabase:只在admin資料庫中可用,賦予使用者所有資料庫的讀許可權
readwriteanydatabase:只在admin資料庫中可用,賦予使用者所有資料庫的讀寫許可權
useradminanydatabase:只在admin資料庫中可用,賦予使用者所有資料庫的useradmin許可權
dbadminanydatabase:只在admin資料庫中可用,賦予使用者所有資料庫的dbadmin許可權。
root:只在admin資料庫中可用。超級賬號,超級許可權
3.0以後mongo預設都是5的認證方式,我們可以修改
檢視認證方式
db.system.version.findone()
修改認證方式
db.system.version.update(,})
設定mongo不帶認證方式啟動 -》 修改認證級別 -》 重新建立使用者 -》 重啟mongo帶認證
如果是配置檔案則修改,然後重啟
auth=false
如果使用docker則刪除容器重新掛載目錄啟動時不帶–auth
修改認證級別
db.system.version.update(,})
db.createuser(]})
然後設定auth為true
db.createcollection(
"testas"
);
單節點下使用docker部署consul
目前consul使用的版本是 v1.0.1 部署server端 本環境僅僅部署乙個server端和乙個client端!docker run d p 1234 8500 h node1 name node1 consul agent server bootstrap expect 1 node nod...
kafka單節點單broker的安裝部署及使用
kafka單節點單broker的安裝部署及使用 配置環境變數 vi bash profile export kafka home usr soft kafka 2.13 2.4.0 export path kaf kaho me b in kafka home bin kafkah ome bin ...
docker使用容器ubuntu安裝mongodb
從docker hub上拉去ubuntu image docker pull ubuntu 16.04互動式 i 進入 bin bash t 目錄掛在到容器 v 宿主機和容器埠對映 p 建立容器 sudo docker run i t v home zhoudazhuang usr local ho...