在Docker中安裝MongoDB

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帳號來登陸

 

 

相關文章
相關標籤/搜索