|
最近由于工作需要搭建MongoDB数据库,将解析的车端采集的数据写入到数据库,由于MongoDB高可用、海量扩展、灵活数据的模型,因此选用MongoDB数据库;由于现公司只有服务器,因此考虑容器化部署MongoDB数据,特此记录一下~
一、镜像拉取
使用如下命令拉取最新MongoDB镜像
二、创建MongoDB容器
2.1 创建宿主机目录
执行如下代码:- mkdir -p /home/bigdata/mongodb_bigdata/data
- mkdir -p /home/bigdata/mongodb_bigdata/conf
- mkdir -p /home/bigdata/mongodb_bigdata/logs
复制代码 创建这几个目录的原因是:
将docker容器挂载的宿主机目录与容器内部的的路径进行映射,相当于对容器的数据做了一个backup。容器销毁时,可以通过宿主机目录对容器的数据进行恢复。
2.2 创建docker容器
执行如下命令:- 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 启动容器
执行如下命令- docker exec -ti mongodb /bin/bash
复制代码 执行上述命令后就进入到容器内部
2.4 创建账号
进入到容器内部后,使用命令mongosh进入到命令行执行页面:
进入到admin
创建超级管理员账号- db.createUser({user:"root",pwd:"123456",roles:[{role:'root',db:'admin'}]})
复制代码
创建bigdata_db库并创建用户- # 创建库
- use bigdata_db;
- # 创建读写帐号
- 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]
- # 查询结果
- result_data = collection_name.find()
- for i in result_data:
- print('the i is :', i)
复制代码 3.2、其他
1、新创建的容器没办法使用vim及ll等命令,可进行如下操作:- apt-get update
- apt-get install vim
复制代码 中途遇到y/n直接enter就行。
如果还有其他的系统命令,可以执行apt-get install进行安装。
2、 ll的配置- vim ~/.bashrc
- # 进入到编辑页面,添加如下内容:
- alias ll='ls -l'
- # 使命令生效
- source ~/.bashrc
复制代码 到此这篇关于docker部署MongoDB数据库的实现步骤的文章就介绍到这了,更多相关docker部署MongoDB 内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
来源:https://www.jb51.net/server/3191739m1.htm
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|