1. 程式人生 > 實用技巧 >centos下docker部署mongoDB並開啟遠端訪問

centos下docker部署mongoDB並開啟遠端訪問

1. 搜尋、拉取和檢視映象

docker searh mongoDb
docker pull mongo
docker images | grep mongo

2.使用 docker 安裝 mongodb(建立容器並執行)

docker run --name mongo -v ~/docker/mongo:/data/db -p 27017:27017 -d mongo

執行上述命令之後, 一個掛載了 mongo映象的容器就開始運行了 其中

–name 設定了容器的名字
-v 設定了路徑的對映, 將本地路徑對映到容器中. 此處, 路徑可以自定義
-p 設定了埠的對映, 將容器的27017(右側) 對映到了本地的27017(右側)

檢視容器是否成功建立

docker ps

啟動容器

docker start mongo

3. 進入、退出容器

#進入容器
docker exec -it mongo bash

上述命令的意思如下: 使用互動的形式, 在 名字為 mongo 的容器中實行 bash這個命令
退出:ctl + P + Q 或者 exit

4. mongodb的使用

.使用者的建立

#進入 mongo
mongo
#進入 admin 的資料庫
use admin
#建立管理員使用者
db.createUser(
{
user: “root”,
pwd: “752700”,
roles: [ { role: “root”, db: “admin” } ]

}
)
# 建立有可讀寫許可權的使用者. 對於一個特定的資料庫, 比如’demo’
db.createUser({
user: ‘test’,
pwd: ‘123456’,
roles: [{role: “read”, db: “demo”}]
})

.資料庫的建立

use demo;

mongo 是否正常啟動的校驗

#先寫入一條資料
db.info.save({name: ‘test’, age: ‘22’})
#檢視寫入的資料
db.info.find();

結果如下

{ “_id” : ObjectId(“5c973b81de96d4661a1c1831”), “name” : “test”, “age” : “22” }

5. 遠端連線的開啟

mongodb 的容器當中

#更新源
apt-get update
#安裝 vim
apt-get install vim
#修改 mongo 配置檔案
vim /etc/mongod.conf.orig

將其中的bindIp: 127.0.0.1註釋掉# bindIp: 127.0.0.1或者改成bindIp: 0.0.0.0 即可開啟遠端連線

在這裡插入圖片描述
這時連結會出現如下錯誤
在這裡插入圖片描述
6. 開放埠27017

.檢查防火牆狀態systemctl status firewalld

開啟防火牆埠firewall-cmd --zone=public --add-port=27017/tcp --permanent
命令含義:
–zone #作用域
–add-port=27017/tcp #新增埠,格式為:埠/通訊協議
–permanent #永久生效,沒有此引數重啟後失效

重新載入配置firewall-cmd --reload

檢視開放的埠firewall-cmd --list-ports

出現27017埠就可以了

7.遠端伺服器還需設定 安全組策略

在這裡插入圖片描述