1.版本選取
訪問mongodb的鏡像倉庫地址:
https://hub.docker.com/_/mongo?tab=tags&page=1

這里選取最新版本進行安裝,如果想安裝其他的可用版本,可以使用命令“docker search mongo”來查看

2.拉取最新版本鏡像
這里執行命令"sudo docker pull mongo:latest" 拉取最新版的mongodb鏡像文件

等待鏡像拉取完成后,通過命令"sudo docker images"查看下拉取的鏡像,可以看到,已經成功拉取到了本地

3.開始運行
創建一個文件夾,用作mongodb的數據目錄掛載

運行啟動命令“docker run -p 27017:27017 -v /data/mongo:/data/db --name mongodb -d mongo”

在上面的命令中,幾個命令參數的詳細解釋如下:
-p 映射容器服務的 27017 端口到宿主機的 27017 端口。外部可以直接通過 宿主機 ip:27017 訪問到 mongo 的服務
-v 為設置容器的掛載目錄,這里是將本機的“/data/mongo”目錄掛載到容器中的/data/db中,作為 mongodb 的存儲目錄
--name 為設置該容器的名稱
-d 設置容器以守護進程方式運行
通過命令“docker ps”查看容器啟動運行情況

可以看到mongo容器已經成功運行起來了
4.使用客戶端工具Studio 3T連接mongo
studiot 3T下載地址:
https://studio3t.com/download/


5.創建mongo用戶
可以看到一個空的mongo數據庫,有一個不太完美的地方在於我們的mongo沒有任何賬戶密碼,在裸奔,下面我們執行以下語句,創建一個管理員用戶,
db.createUser({ user: 'admin', pwd: 'Aa123456', roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] });

6.指定auth重新運行服務
創建完用戶我們就要重新啟動mongo服務,並且指定auth
刪除已經運行的mongo容器:docker rm -f mongodb
指定驗證啟動mongo容器:docker run -p 27017:27017 -v /data/mongo:/data/db --name mongodb -d mongo --auth
也就是在之前的啟動命令后面加上 --auth:需要密碼才能訪問容器服務
此時強行訪問,可以看到提示,沒有授權

這里我們在連接的地方指定一下賬戶密碼

再來查詢,已經正確查詢出來之前添加的用戶信息

7.創建一個業務數據庫和對應的讀寫賬戶
use demo_db; db.createUser({ user: 'dev', pwd: 'Aa123456', roles: [ { role: "readWrite", db: "demo_db" } ] });

然后用這個dev賬號來登錄
