技术标签: mongo Docker MongoDB docker docker mongo
1、不会安装docker的请移步----》centos7安装docker Ubantu16.04安装docker
2、安装docker-compose(Centos7环境无pip的----》centos7安装pip2)
pip install docker-compose
mkdir mongod && cd mongod
openssl rand -base64 756 > mongo.key
docker volume create mongod_mongo_key
MONGO_KEY_DIR=`docker volume inspect mongod_mongo_key | grep Mount | sed -r 's#.*"(.*)",$#\1#'`
cp mongo.key $MONGO_KEY_DIR
chmod 400 $MONGO_KEY_DIR/mongo.key
chown 999.999 $MONGO_KEY_DIR/mongo.key
mkdir /data/mongo/mongdb{1..3} -pv
#映射/data/mongo/mongdb{1,2,3}目录到容器里,将数据持久化到磁盘
#映射出三个端口,以便外部用户连接
#MONGO_INITDB_ROOT_USERNAME:管理员用户的账号
#MONGO_INITDB_ROOT_PASSWORD:管理员用户的密码
cat << EOF > docker-compose.yaml
version: "3.7"
services:
mongodb1:
image: mongo:4.0.3
container_name: mongodb1
networks:
- mongodb
ports:
- "27017:27017"
environment:
- MONGO_INITDB_ROOT_USERNAME=root
- MONGO_INITDB_ROOT_PASSWORD=123456x
volumes:
- /data/mongo/mongdb1:/data/db
- mongo_key:/mongo
command: ["mongod","--replSet","BigBoss","--keyFile","/mongo/mongo.key","--directoryperdb"]
mongodb2:
image: mongo:4.0.3
container_name: mongodb2
networks:
- mongodb
ports:
- "27018:27017"
environment:
- MONGO_INITDB_ROOT_USERNAME=root
- MONGO_INITDB_ROOT_PASSWORD=123456x
volumes:
- /data/mongo/mongdb2:/data/db
- mongo_key:/mongo
command: ["mongod","--replSet","BigBoss","--keyFile","/mongo/mongo.key","--directoryperdb"]
mongodb3:
image: mongo:4.0.3
container_name: mongodb3
networks:
- mongodb
ports:
- "27019:27017"
environment:
- MONGO_INITDB_ROOT_USERNAME=root
- MONGO_INITDB_ROOT_PASSWORD=123456x
volumes:
- /data/mongo/mongdb3:/data/db
- mongo_key:/mongo
command: ["mongod","--replSet","BigBoss","--keyFile","/mongo/mongo.key","--directoryperdb"]
networks:
mongodb:
driver: bridge
name: mongodb
volumes:
mongo_key:
EOF
1、拉取mongo4.0的镜像
docker pull mongo:4.0.3
我这失败了一次,后面查了一下mongo镜像docker search mongo,docker官网是有这个镜像的,然后有拉取了一次
2、执行docker-compose文件,在docker-compose.yaml同级目录下执行
docker-compose up -d
3、连接mongodb1容器,开始配置集群
docker exec -it mongodb1 mongo -uroot -p123456x --authenticationDatabase admin
#三节点,其中一个为投票节点,并隐藏
#注意host的IP地址,一定要让客户端也能连接所有的地址
#_id的值为--replSet参数后的字符串
rs.initiate(
{
_id: "BigBoss",
version: 1,
protocolVersion: 1,
writeConcernMajorityJournalDefault: true,
members: [
{
_id: 0,
host: "mongodb1:27017",
arbiterOnly: false,
buildIndexes: true,
hidden: false,
priority: 66,
tags: {
BigBoss: "YES"
},
slaveDelay: 0,
votes: 1
},
{
_id: 1,
host: "mongodb2:27017",
arbiterOnly: false,
buildIndexes: true,
hidden: false,
priority: 55,
tags: {
BigBoss: "NO"
},
slaveDelay: 0,
votes: 1
},
{
_id: 2,
host: "mongodb3:27017",
arbiterOnly: true,
buildIndexes: true,
hidden: true,
priority: 0,
tags: {
},
slaveDelay: 0,
votes: 1
}
],
settings: {
chainingAllowed : true,
}
}
)
4、查看状态
rs.status()
1、进入mongodb2容器中
docker exec -it mongodb2 mongo -uroot -p123456x --authenticationDatabase admin
2、停止PRIMARY的容器
docker stop mongodb1
3、连接mongdb2容器查看状态是否改变
docker exec -it mongodb2 mongo -uroot -p123456x --authenticationDatabase admin
这种情况下的话,肯定搞过这个项目不止一次,然后idea里面有缓存(我试过清缓存的方式请不掉),这时候导入项目的时候如果你没有进行指定的话,默认main都成了main1了,main2等等,,,而且所有的import全部爆红,每个类都需要打开一下手动重新导入,但是这样子太麻烦了解决方案1: 打开项
关键字数据类型修饰相关auto按照自动的方式进行变量的存储const定义常量或常参数extern声明外部变量或函数register指定变量的存储类型是寄存器变量static指定变量的存储类型是静态变量,或指定函数是静态函数volatile变量的值可能在程序的外部被改变数据类型相关char字符型数据short定义短整型变量或指针int整型数据long长整型数据signed有...
JAVA需求:运用servlet实现用户的登录校验案例项目结构如下:一.准备工作 jar包 : mysql.jar c3p0.jar (web,jar复制的时候放到WEB-INF/lib) 配置文件: c3p0-config.xml (src下) web.xml 包结构 : com.itheima.web com.itheima....
问题:如何用java开发一个网站?下载了最新的JDK软件、最新的Eclipse、数据库mysql以及tomcat、struts但是不知道怎么连接起来,在数据库连接的时候mysql-connector-java-5.1.44中没有Driver.jar,tomcat配置环境的时候也有问题,tomcat plugin没有和最新的JDK配套的怎么办?看了问题,我建议题主还是好好先学一轮基础的东西。基于问题我简单提几点:Eclipse是开发工具,最新的没问题。JDK其实不需要用最新,现在市面上大多数还是JDK
/ip firewall filter add chain=input connection-state=invalid action=drop comment="丢弃非法连接数据" disabled=no/ip firewall filter add chain=input protocol=icmp action=drop comment="禁止外网Ping" disabled=no in-i...
宇航Fanuc与Siemens的车铣模拟机破解版 1CD宇航数控车铣网络版 1CD南京斯沃数控仿真SSCNC 6.40 1CDAutoSEA2 2004.v2.5.0.8-ISO 1CD(噪声和振动分析软件,它代表了统计能量分析(SEA)领域的最高水平)AutoSEA2 v2004 用户指南(英文) GridPro.v4.5
Vue3.0 安装npm i [email protected] [email protected] install [email protected] i webpack webpack-cli webpack-dev-server --save-devtypescript安装依赖npm install ts-loader --save-devnpm install typescript --save-devnpm install @vue/babel-plugin-jsx -Dnpm i @babe
一、Hive概述 Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据表,并提供类似于SQL(HiveSQL)的操作功能。在Hive中,本质上是将SQL转换成为MapReduce程序。二、1、建表语句CREATE TABLE `app.app_test`( `data_dt` string COMMENT '时间', `...
hql没有delete和update 1、首先,hql是面向对象查询的;sql是面向数据库做查询。2、hql的语法结构:from + 类名+类对象 +where+类对象属性的条件; sql的语法结构:from +数据库表名+ where +表字段条件3、新增:hql不需要再用insert语句,只需构造新增对象后调用save()方法4、修改:hql不需要再用up...
本文重点:将python的回归预测结果输出到CSV文件中学习机器学习已经三个月了,参加了一些比赛,也完成了一些任务,之前一直把遇到和解决的问题林林总总的积累到了OneNote中,随着内容的增多,越来越感受到了分类整理的重要性,这便是这第一篇博客的由来~这两天完成了kaggle的第一个比赛,结果又遵循了我一贯的风格,一个bug卡一天,哈哈哈!终于解决了结果输出的问题,遂于此文总结一下哈~欢迎...
功能说明将labelme标注的json文件中的坐标和label信息提取到txt文件中注意:labelme标注时使用“polygon”即画点标注方式,不是“rectangle”和“circle”标注方式,每个点坐标包括x和y,所以总共输出8个坐标值和1个label值。json格式批量转换dir_json为json文件夹dir_txt为txt文件夹同级目录下创建json2txt.py文...
vuejs仿写朋友圈。* 将HTML中按逻辑切割成vue组件* 每个vue组件单独建立一个.vue文件* 实现父->子通信。如:将data通过props传到子组件,并按照存储逻辑分层渲染。* 实现子->父通信。如:子组件点赞后emit在父组件中显示点赞的效果。