docker mongodb 雙劍合壁

2021-10-08 12:05:31 字數 2838 閱讀 8558

本次使用的環境 centos 7, mongodb 3.4 的環境

也可以使用本地環境,沒有多大影響。

version: '2'

services:

mongo-container:

image: mongo:3.4

container_name: mongodb

environment:

- mongo_initdb_root_username=root

- mongo_initdb_root_password=123456

ports:

- "27017:27017"

volumes:

- "./data/mongo:/data/db"

- "./data/mongo-entrypoint/:/docker-entrypoint-initdb.d/"

command: mongod

systemctl start docker // 當前為centos 環境下啟動方式, 如果本地則為自行查閱資料啟動。

docker ps
好了。mongodb 已經安裝完成了。

下面 mongodb 的客戶端【mongodb compass】驗證 mongodb的是否執行良好?

登入進入去可以看到

const connectionstr = 'mongodb://root:123456@你的ip或localhost:27017/可以為admin也可以為其他database?authmechanism=scram-sha-1'

mongoose.connect(connectionstr, , () => console.log('mongodb 連線成功了!'));

mongoose.connection.on('error', console.error);

執行介面引數呼叫,檢視mongodb compass 的資料變化。我的例子如下:

ok了,

最後:這邊我們建立了乙個admin使用者許可權, 然後我們需要去重啟的docker,然後用身份校驗的方式登入。

1. docker-compose down

2. docker-compose up -d

docker 的 mongodb 已經啟動ok。

3. 檢視docker容器 docker ps

4. docker exec -it [容器id] bash

5. auth 的身份登入 mongo admin -u 'root' -p '123456'

})

db.auth('root','123456') // 返回1 則代表ok
show users // 結果返回使用者資訊
ps: abc 的三個步驟不能顛倒。

到此我們連線 admin的db 已經完成了,但是我們的業務都不是在admin 上操作了,此時我們建立乙個的databae。

修改node**

mongoose.set('usefindandmodify', false)

const connectionstr = 'mongodb://username:123456@你的ip或localhost:27017/demo?authmechanism=scram-sha-1'

mongoose.connect(connectionstr, , () => console.log('mongodb 連線成功了!'));

mongoose.connection.on('error', console.error);

postman除錯介面,連線mongodb compass 客戶端,看看能不能檢視資料。

這下真的ok了。。。。。。。。。。。。。。。

# 進入容器

docker exec -it [容器id] bash

#更新源

apt-get update

# 安裝 vim

apt-get install vim

# 修改 mongo 配置檔案

vim /etc/mongod.conf.orig

雙劍合並 XOR Trie

題意 給你兩行數,一行n個,一行m個,現在要你分別在這n個和m個裡面找出1個,使得它們的異或和最大!分析 典型的xor trie.列舉一行數,另一行用xor trie存起來,然後這樣就可以很快查詢了。ac include include include include using namespace...

劍指offer 雙指標

雙指標 21.py 輸入乙個整數陣列,實現乙個函式來調整該陣列中數字的順序,使得所有奇數字於陣列的前半部分,所有偶數字於陣列的後半部分。class solution def exchange self,nums list int list int j len nums 1 i 0while iif ...

IsNull 和 NullIf 雙劍合璧

首先看看sql server 聯機叢書的資訊,其中我們該注意的地方我用紅字標出 使用指定的替換值替換 null 語法 isnull check expression,replacement value 引數 check expression 將被檢查是否為 null 的表示式。check expre...