centos7 在docker中安裝mongodb


一、搜索docker的mongo鏡像

docker search mongo

二、拉取mongo最新鏡像

docker pull mongo

三、創建好mongo存儲路徑,便於后面做掛載

mkdir -p /data/mongo

四、運行鏡像

docker run --restart=always --name mongo -v /data/mongo:/data/db -p 27017:27017 -d mongo --auth

返回dockerid說明執行成功

指令說明
--restart=always 表示重啟自動運行
--name 設置容器名稱
-v 掛載目錄 宿主機目錄/容器目錄
-p 端口映射 宿主機/容器
-d 表示后台運行
--auth 表示鏈接需要認證,推薦加上,也可以不加

五、查看運行的容器

docker ps -a

六、創建mongo的用戶及密碼
首先進入容器

docker exec -it mongo bash

進入mongo

mongo

使用admin

use admin

創建一個賬戶密碼.(注意:沒有創建過用戶才可以不需要auth直接創建,否則先登錄db.auth('zhangsan','123456'))才能創建,也就是只要創建過一次用戶了都需要先auth才能操作,或者也可以把/data/mongo目錄全部清空創建新容器(會丟失數據)

db.createUser({user:"zhangsan",pwd:"123456",roles:[{role:'root',db:'admin'}]})

如果需要退出mongo,執行指令exit,圖如下

MongoDB基本的角色
1.數據庫用戶角色:read、readWrite;
2.數據庫管理角色:dbAdmin、dbOwner、userAdmin;
3.集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager;
4.備份恢復角色:backup、restore;
5.所有數據庫角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase
6.超級用戶角色:root 這個角色的權限最大

七、配置mongo的遠程訪問,在mongo容器里修改配置文件
繼續第六步驟不要退出容器,或者再重新進入容器docker exec -it mongo bash
先安裝好vim

apt-get update
apt-get install vim -y

修改mongo配置文件,運行遠程訪問

vim /etc/mongod.conf.orig

將其中的 bindIp: 127.0.0.1 注釋或者改為0.0.0.0,保存:wq並退出

然后exit 退出mongo容器回到宿主機,重啟docker讓配置生效

docker restart mongo

八、測試遠程連接mongodb,下圖用的navicat
1、如果不使用賬號密碼登陸的話會報錯

2、使用正確的賬號密碼

九、測試常用的一些mongo指令
1、進入容器、mongo、授權認證

docker exec -it mongo bash
mongo
use admin
db.auth('zhangsan','123456')

返回1說明登錄成功了

2、創建數據庫,並插入和查詢測試數據

use test
db.test.save({name: 'test', age: '18'})
db.test.find();


navicat中查看

其他指令:
show dbs 查看數據庫
show collections 查看集合


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM