CLion多個main函式
阿新 • • 發佈:2021-11-25
前言
本章將使用docker安裝mongo,前提條件是已經安裝完docker並會使用docker。
如果還沒有安裝docker,可以參考在CentOS7下安裝Docker
如果還不會docker,但需要學習mongodb相關的知識,可以參考另一篇部落格,那裡詳細講述瞭如何在Linux上安裝mongodb環境。
附上部落格連結 部落格傳送門
安裝mongo
在Docker Hub上查詢映象
拉取官方映象
[root@e2ab0x9jme3furrd ~]# docker pull mongo
檢視本地映象
[root@e2ab0x9jme3furrd ~]# docker images
建立資料夾
[root@e2ab0x9jme3furrd ~]# mkdir -p /data/mongo/data [root@e2ab0x9jme3furrd ~]# mkdir -p /data/mongo/conf [root@e2ab0x9jme3furrd ~]# mkdir -p /data/mongo/backup [root@e2ab0x9jme3furrd ~]# cd /data/mongo [root@e2ab0x9jme3furrd mongo]# ll total 0 drwxr-xr-x 2 root root 6 Nov 30 15:46 backup drwxr-xr-x 2 root root 6 Nov 30 15:46 conf drwxr-xr-x 2 root root 6 Nov 30 15:45 data
執行容器
[root@e2ab0x9jme3furrd mongo]# docker run -v /data/mongo/data:/data/db -v /data/mongo/backup:/data/backup -v /data/mongo/conf:/data/configdb --name mongod -p 27017:27017 -d mongo --auth
檢視容器狀態
[root@e2ab0x9jme3furrd mongo]# docker ps
建立一個新使用者
執行完前面的步驟,我們已經可以進入容器,並且可以開啟mongo的命令列視窗。但是這樣存在一個問題,就好像一個人沒穿衣服在大街上,是很不安全的。
所以我們在此步建立一個新使用者,每次進入mongo的命令視窗時輸入使用者名稱密碼登入,這樣在一定程度是解決了安全性問題,防止某些居心叵測的人登入你的資料庫刪庫跑路。
[root@e2ab0x9jme3furrd mongo]# docker exec -it mongod mongo admin
MongoDB shell version v5.0.4
connecting to: mongodb://127.0.0.1:27017/admin?compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("e303c2e5-ff96-4f50-bddc-6e676edeff45") }
MongoDB server version: 5.0.4
================
Warning: the "mongo" shell has been superseded by "mongosh",
which delivers improved usability and compatibility.The "mongo" shell has been deprecated and will be removed in
an upcoming release.
For installation instructions, see
https://docs.mongodb.com/mongodb-shell/install/
================
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see
https://docs.mongodb.com/
Questions? Try the MongoDB Developer Community Forums
https://community.mongodb.com
> db.createUser({user: 'admin', pwd: '123456', roles: [ {role: 'userAdminAnyDa'} ]}) db.createUser({user: 'admin', pwd: '123456', roles: [ {role: 'userAdminAnyDat'} ]})db.createUser({user: 'admin', pwd: '123456', roles: [ {role: 'userAdminAnyData'} ]}db.createUser({user: 'admin', pwd: '123456', roles: [ {role: 'userAdminAnyDat'} ]})db.createUser({user: 'admin', pwd: '123456', roles: [ {role: 'userAdminAnyDa'} ]}) '} ]})
uncaught exception: SyntaxError: '' literal not terminated before end of script :
@(shell):1:6
> db.createUser({ user:'admin',pwd:'123456',roles:[ { role:'userAdminAnyDatabase', db: 'admin'},"readWriteAnyDatabase"]});
Successfully added user: {
"user" : "admin",
"roles" : [
{
"role" : "userAdminAnyDatabase",
"db" : "admin"
},
"readWriteAnyDatabase"
]
}
> db.auth('admin', '123456')
1
> show dbs;
admin 0.000GB
config 0.000GB
local 0.000GB
測試連線
至此,我們就在Linux下安裝好了mongo環境!!!