使用 docker 一键部署 MongoDB
目录
1. 前期准备
2. 导入镜像
3. 部署MongoDB脚本
4. 配置模板文件
5. 部署MongoDB
6. 部署后配置
7. 基本维护
1. 前期准备
新部署前可以从仓库(repository)下载 MongoDB 镜像,或者从已有部署中的镜像生成文件:
# 查看当前本地镜像
docker images
# 生成本地镜像文件
docker save <IMAGE ID> -o mongodb_3015.tar
生成 MongoDB 副本集所需的 autokey 文件:
# 建立autokey文件
openssl rand -base64 756 > autokey
# 修改读写模式
chmod 400 autokey
2. 导入镜像
# 在新部署的机器上导入镜像
docker load -i mongodb_3015.tar
docker images
3. 部署MongoDB脚本
mongodb-deploy.sh 文件内容如下:
#!/bin/bashmkdir -p /usr/local/docker/mongodb/conf
mkdir -p /usr/local/docker/mongodb/data
cp /root/autokey /usr/local/docker/mongodb/data/
cp /root/mongodb.conf.template /usr/local/docker/mongodb/conf/mongodb.conf
chown -R polkitd:root /usr/local/docker/mongodb/docker run --name mongo \
-v /usr/local/docker/mongodb/data:/data/db \
-v /usr/local/docker/mongodb/conf:/data/conf \
-p 27017:27017 \
-e TZ=Asia/Shanghai \
-itd a.com:8443/dockerhub/mongo:3.0.15 \
--replSet mvbox_new
4. 配置模板文件
mongodb.conf.template 文件内容如下:
port = 27017
logpath = /data/db/mongodb.log
pidfilepath = /data/db/mongodb.pid
dbpath = /data/db/
logappend = true
fork = true
journal = true
directoryperdb = true
auth = true
maxConns = 1000
profile = 1
replSet = mvbox_new
keyFile = /data/db/autokey
5. 部署MongoDB
# 在所有 MongoDB 副本集机器执行
./mongodb-deploy.sh
6. 部署后配置
在 primary 机器上执行下面的操作。
# 配置副本集
cp /root/rs_initiate.js /usr/local/docker/mongodb/data/
docker exec -it mongo mongo --port 27017 /data/db/rs_initiate.js
rs_initiate.js 文件内容如下:
rs.initiate({_id: "mvbox_new",version: 1,members: [{ _id: 0, host : "172.18.29.56:27017", priority:2 },{ _id: 1, host : "172.18.29.57:27017", priority:1 },{ _id: 2, host : "172.18.29.58:27017", priority:1 }]}
)
# 创建 admin 用户
docker exec -it mongo mongo --port 27017use admin;
db.createUser({user : "admin", pwd : "123456", roles: [ { role : "root", db : "admin" } ] });
exit;# 重新登录,创建更多用户
docker exec -it mongo mongo --port 27017 -u admin -p 123456 adminuse admin
db.createUser({user : "vvmusic_msg", pwd : "123456", roles: [ { role : "dbOwner", db : "vvmusic_msg" } ] });
db.createUser({user : "vvlive", pwd : "123456", roles: [ { role : "dbOwner", db : "vvlive" } ] });
use vvmusic_msg
db.createUser({user : "vvmusic_msg", pwd : "123456", roles: [ { role : "dbOwner", db : "vvmusic_msg" } ] });
use vvlive
db.createUser({user : "vvlive", pwd : "3123456", roles: [ { role : "dbOwner", db : "vvlive" } ] });
exit;# 验证用户登录
docker exec -it mongo mongo --port 27017 -u admin -p 123456 admin
docker exec -it mongo mongo --port 27017 -u vvlive -p 123456 admin
docker exec -it mongo mongo --port 27017 -u vvlive -p 123456 vvlive
docker exec -it mongo mongo --port 27017 -u vvmusic_msg -p 123456 admin
docker exec -it mongo mongo --port 27017 -u vvmusic_msg -p 123456 vvmusic_msg
7. 基本维护
# 查看镜像
docker images
# 查看容器
docker ps
# 查看容器详细信息
docker inspect <CONTAINER ID>
# 重启容器
docker restart mongo
# 停止容器
docker stop mongo
# 删除容器
docker rm mongo相关文章:
使用 docker 一键部署 MongoDB
目录 1. 前期准备 2. 导入镜像 3. 部署MongoDB脚本 4. 配置模板文件 5. 部署MongoDB 6. 部署后配置 7. 基本维护 1. 前期准备 新部署前可以从仓库(repository)下载 MongoDB 镜像,或者从已有部署中的镜像生成文件: # 查看…...
【深度学习】Inst-Inpaint: Instructing to Remove Objects with Diffusion Models,指令式图像修复
论文:https://arxiv.org/abs/2304.03246 code:http://instinpaint.abyildirim.com/ 文章目录 AbstractIntroductionRelated WorkDataset GenerationMethodPS Abstract 图像修复任务是指从图像中擦除不需要的像素,并以语义一致且逼真的方式填充它们。传统…...
创建维基WIKI百科和建立百度百科有何不同?
很多企业有出口业务,想在互联网上开展全球性网络营销,维基百科往往被认为是开展海外营销的第一站。其作用相当于开展国内网络营销的百度百科,经常有些企业给小马识途营销顾问提供的词条内容就是百度百科的内容,可事实上两个平台的…...
Python小红书旋转验证码识别
本周免费接了一个用户的需求,研究了一下小红书旋转验证码。刚开始小瞧了它,觉得它应该没有百度旋转验证码那么难,毕竟图像没有干扰,需要的训练样本就可以很少。然而事情并没有这么简单,所以记录一下。 首先看一下最终…...
ELK搭建
ELK概述 ELK是elasticsearch Logstash Kibana 这种架构的简写。这是一种日志分平台析的架构, Elasticsearch Logstash filebeat Kibana 这种架构增加了一个filebeat模块。filebeat是一个轻量的日志收集代理,用来部署在客户端,优势是消耗…...
webyog最新社区版免费版下载地址
好用的sql管理工具分享: https://github.com/webyog/sqlyog-community/wiki/Downloads webyog最新社区版免费使用下载。从此不用在找mysql的管理工具而烦恼。...
[SQL挖掘机] - 窗口函数 - dense_rank
介绍: dense_rank() 是一种常用的窗口函数,它为结果集中的每一行分配一个密集排名(dense rank)。这个密集排名基于指定的排序顺序,并且在遇到相同的值时,不会跳过排名。 用法: dense_rank() 函数的语法如下…...
stable diffusion
一:安装。 stable diffusion 安装和使用全教程 - 知乎 Stable Diffusion安装 - 知乎 环境安装: 1:python 3.10安装。 Download Python | Python.org 切记要安装3.10版本,因为Stable diffusion是用3.10版本编写的,所…...
web3行业有哪些职业发展路径?
Web3 是一个相对较新的概念,因此其职业发展路径也在不断演变。一般来说,Web3 职业发展路径可以分为以下几个方向: 区块链开发工程师:区块链开发工程师需要掌握 Solidity 等语言和智能合约开发技能,负责开发和维护区块…...
MATLAB算法实战应用案例精讲-【自动驾驶】相控阵天线方向图
目录 前言 开源LIDAR原型制作平台 系统架构 硬件设计 HDL参考设计 软件...
ALLEGRO之View
本文主要介绍ALLEGRO中的View菜单。 (1)Zoom By Points:按照选型区域放大; (2)Zoom Fit:适合窗口放大; (3)Zoom In:放大; …...
【打造超酷的GitHub主页】
文章目录 Github状态信息-api账户信息统计最常用语言Repo卡片 社交统计统计访问次数徽标 首先上地址:https://gitee.com/java_wxid/giteeprofile/blob/master/README.md 为了照顾一部分网络较差的的朋友们,这里使用国内的gitee仓库将主页代码提供给大家&…...
Transformer 论文学习笔记
重新学习了一下,整理了一下笔记 论文:《Attention Is All You Need》 代码:http://nlp.seas.harvard.edu/annotated-transformer/ 地址:https://arxiv.org/abs/1706.03762v5 翻译:Transformer论文翻译 特点࿱…...
Open3D(C++) 根据索引提取点云
目录 一、功能概述1、主要函数2、源码二、代码实现三、结果展示本文由CSDN点云侠原创,原文链接。爬虫网站自重,把自己当个人 一、功能概述 1、主要函数 std::shared_ptr<PointCloud> SelectByIn...
企业服务器数据库中了_locked勒索病毒怎么解密,_勒索病毒简介与防护
网络技术的发展也为互联网安全带来了一定威胁,对于企业来说,数据安全是关系整个企业正常运行的基础,保护好计算机免受网络威胁的攻击成为大家的一致目标。不过,近期,我们收到很多企业的求助,企业的服务器数…...
面试题 什么是 MyBatis 的接口绑定,有什么好处?
1. 简化开发:接口绑定使得SQL操作变得更加简单和直观。你只需要定义一个接口,声明对数据库的操作方法,MyBatis会动态生成实现类,自动执行SQL语句,无需手动编写SQL或SQL映射文件。 2. 提高可维护性:使用接口…...
[RocketMQ] Consumer 负载均衡服务 RebalanceService入口源码 (十五)
RocketMQ一个消费者组中可以有多个消费者, 在集群模式下他们共同消费topic下的所有消息, RocketMQ规定一个消息队列仅能被一个消费者消费, 但是一个消费者可以同时消费多个消息队列。需要负载均衡服务RebalanceService来进行消息队列分配的重平衡。使用负载均衡服务RebalanceSe…...
【K210】K210学习笔记六——MaixHub在线模型训练识别数字
【K210】K210学习笔记六——MaixHub在线模型训练识别数字 前言K210准备工作数据的获取MaixHub如何在线训练模型训练模型在K210上的测试小结 前言 本人大四学生,电赛生涯已经走到尽头,一路上踩过不少坑,但运气也不错拿了两年省一,…...
142. 环形链表 II
142. 环形链表 II 中等 2.2K 相关企业 给定一个链表的头节点 head ,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定…...
Flutter系列文章-Flutter进阶2
这一节我将再详细地为您介绍 Flutter 进阶主题,包括导航和路由、状态管理、异步处理、HTTP请求和Rest API,以及数据持久化。让我们逐个介绍这些主题。 1.导航和路由 在 Flutter 中,导航和路由是构建多页面应用的关键概念。导航是指从一个页…...
SciencePlots——绘制论文中的图片
文章目录 安装一、风格二、1 资源 安装 # 安装最新版 pip install githttps://github.com/garrettj403/SciencePlots.git# 安装稳定版 pip install SciencePlots一、风格 简单好用的深度学习论文绘图专用工具包–Science Plot 二、 1 资源 论文绘图神器来了:一行…...
Go 语言接口详解
Go 语言接口详解 核心概念 接口定义 在 Go 语言中,接口是一种抽象类型,它定义了一组方法的集合: // 定义接口 type Shape interface {Area() float64Perimeter() float64 } 接口实现 Go 接口的实现是隐式的: // 矩形结构体…...
微服务商城-商品微服务
数据表 CREATE TABLE product (id bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 商品id,cateid smallint(6) UNSIGNED NOT NULL DEFAULT 0 COMMENT 类别Id,name varchar(100) NOT NULL DEFAULT COMMENT 商品名称,subtitle varchar(200) NOT NULL DEFAULT COMMENT 商…...
dify打造数据可视化图表
一、概述 在日常工作和学习中,我们经常需要和数据打交道。无论是分析报告、项目展示,还是简单的数据洞察,一个清晰直观的图表,往往能胜过千言万语。 一款能让数据可视化变得超级简单的 MCP Server,由蚂蚁集团 AntV 团队…...
CSS设置元素的宽度根据其内容自动调整
width: fit-content 是 CSS 中的一个属性值,用于设置元素的宽度根据其内容自动调整,确保宽度刚好容纳内容而不会超出。 效果对比 默认情况(width: auto): 块级元素(如 <div>)会占满父容器…...
rknn toolkit2搭建和推理
安装Miniconda Miniconda - Anaconda Miniconda 选择一个 新的 版本 ,不用和RKNN的python版本保持一致 使用 ./xxx.sh进行安装 下面配置一下载源 # 清华大学源(最常用) conda config --add channels https://mirrors.tuna.tsinghua.edu.cn…...
【FTP】ftp文件传输会丢包吗?批量几百个文件传输,有一些文件没有传输完整,如何解决?
FTP(File Transfer Protocol)本身是一个基于 TCP 的协议,理论上不会丢包。但 FTP 文件传输过程中仍可能出现文件不完整、丢失或损坏的情况,主要原因包括: ✅ 一、FTP传输可能“丢包”或文件不完整的原因 原因描述网络…...
【WebSocket】SpringBoot项目中使用WebSocket
1. 导入坐标 如果springboot父工程没有加入websocket的起步依赖,添加它的坐标的时候需要带上版本号。 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-websocket</artifactId> </dep…...
恶补电源:1.电桥
一、元器件的选择 搜索并选择电桥,再multisim中选择FWB,就有各种型号的电桥: 电桥是用来干嘛的呢? 它是一个由四个二极管搭成的“桥梁”形状的电路,用来把交流电(AC)变成直流电(DC)。…...
WEB3全栈开发——面试专业技能点P7前端与链上集成
一、Next.js技术栈 ✅ 概念介绍 Next.js 是一个基于 React 的 服务端渲染(SSR)与静态网站生成(SSG) 框架,由 Vercel 开发。它简化了构建生产级 React 应用的过程,并内置了很多特性: ✅ 文件系…...
