docker部署MongoDB數(shù)據(jù)庫的實現(xiàn)步驟
最近由于工作需要搭建MongoDB數(shù)據(jù)庫,將解析的車端采集的數(shù)據(jù)寫入到數(shù)據(jù)庫,由于MongoDB高可用、海量擴展、靈活數(shù)據(jù)的模型,因此選用MongoDB數(shù)據(jù)庫;由于現(xiàn)公司只有服務(wù)器,因此考慮容器化部署MongoDB數(shù)據(jù),特此記錄一下~
一、鏡像拉取
使用如下命令拉取最新MongoDB鏡像
docker pull mongo
二、創(chuàng)建MongoDB容器
2.1 創(chuàng)建宿主機目錄
執(zhí)行如下代碼:
mkdir -p /home/bigdata/mongodb_bigdata/data mkdir -p /home/bigdata/mongodb_bigdata/conf mkdir -p /home/bigdata/mongodb_bigdata/logs
創(chuàng)建這幾個目錄的原因是:
將docker容器掛載的宿主機目錄與容器內(nèi)部的的路徑進行映射,相當(dāng)于對容器的數(shù)據(jù)做了一個backup。容器銷毀時,可以通過宿主機目錄對容器的數(shù)據(jù)進行恢復(fù)。
2.2 創(chuàng)建docker容器
執(zhí)行如下命令:
docker run -dit --name mongodb -p 27019:27017 \ -v /home/bigdata/mongodb_bigdata/data:/data/db \ -v /home/bigdata/mongodb_bigdata/conf:/data/configdb \ -v /home/bigdata/mongodb_bigdata/logs:/data/log/ \ --restart always -d mongo
2.3 啟動容器
執(zhí)行如下命令
docker exec -ti mongodb /bin/bash
執(zhí)行上述命令后就進入到容器內(nèi)部
2.4 創(chuàng)建賬號
進入到容器內(nèi)部后,使用命令mongosh進入到命令行執(zhí)行頁面:
進入到admin
創(chuàng)建超級管理員賬號
db.createUser({user:"root",pwd:"123456",roles:[{role:'root',db:'admin'}]})
創(chuàng)建bigdata_db庫并創(chuàng)建用戶
# 創(chuàng)建庫 use bigdata_db; # 創(chuàng)建讀寫帳號 db.createUser( { user: "bigdata_rw", pwd: "11111111", roles: [ { role: "readWrite", db: "bigdata_db" } ] } )
三、案例
3.1 python鏈接mongodb庫
# ------------------------------ mongodb連接信息配置 ------------------------------- # 讀寫 username = 'bigdata_rw' password = '2222' ip = 'xx.xxx.xx.xx' port = 27019 database = 'bigdata_db' mongodb_info = f"mongodb://{username}:{password}@{ip}:{port}/{database}" # --------------------------------------------------------------------------------- connection = pymongo.MongoClient(mongodb_info) # 鏈接 db_name = connection['bigdata_db'] collection_name = db_name[mongodb_table_name] # 查詢結(jié)果 result_data = collection_name.find() for i in result_data: print('the i is :', i)
3.2、其他
1、新創(chuàng)建的容器沒辦法使用vim及l(fā)l等命令,可進行如下操作:
apt-get update apt-get install vim
中途遇到y(tǒng)/n直接enter就行。
如果還有其他的系統(tǒng)命令,可以執(zhí)行apt-get install進行安裝。
2、 ll的配置
vim ~/.bashrc # 進入到編輯頁面,添加如下內(nèi)容: alias ll='ls -l' # 使命令生效 source ~/.bashrc
到此這篇關(guān)于docker部署MongoDB數(shù)據(jù)庫的實現(xiàn)步驟的文章就介紹到這了,更多相關(guān)docker部署MongoDB 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
docker中搭建overlay 網(wǎng)絡(luò)實驗環(huán)境
這篇文章主要介紹了docker中搭建overlay 網(wǎng)絡(luò)實驗環(huán)境的相關(guān)資料,需要的朋友可以參考下2017-08-08詳解如何利用docker快速構(gòu)建MySQL主從復(fù)制環(huán)境
這篇文章主要介紹了詳解如何利用docker快速構(gòu)建MySQL主從復(fù)制環(huán)境,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-05-05Dockerfile建立一個自定義的鏡像執(zhí)行自定義進程詳細(xì)過程
這篇文章主要介紹了Dockerfile建立一個自定義的鏡像執(zhí)行自定義進程,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-12-12docker部署springboot和vue項目的實現(xiàn)步驟
本文主要介紹了docker部署springboot和vue項目的實現(xiàn)步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-06-06