# lsz_cloud_boot **Repository Path**: fly-cly/lsz_cloud_boot ## Basic Information - **Project Name**: lsz_cloud_boot - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: springboot2 - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-11-01 - **Last Updated**: 2021-11-01 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # lsz_cloud #### 项目介绍 该项目为凉山州云地质环境基础数据填报管理系统 #### 软件架构 采用jeefw作为快速开发框架 凉山州云 #### 运行说明 ``` java -Xmx2048m -Xms2048m -Xmn1g -Xss512k -jar lsz_cloud_boot-2.0.0.war --spring.profiles.active=dev ``` #### 安装教程 ##### 1. 运行时:org.jgroups.protocols.UDP.setTimeToLive failed setting ip_ttl 添加jvm参数 -Djava.net.preferIPv4Stack=true ##### 2.数据库主从配置 主数据库my.ini: ``` [mysqld] #禁用DNS解析,解决响应缓慢的问题 skip-name-resolve server-id=1 #开启GTID复制 gtid-mode = ON enforce-gtid-consistency = ON log-slave-updates = ON master-verify-checksum = 1 log-bin=mysql-bin log_bin_index = mysql-bin.index binlog_format= mixed max_binlog_size = 100M binlog-checksum = CRC32 ``` 从数据库1my.ini: ``` [mysqld] server-id=2 #开启GTID复制 gtid-mode = ON enforce-gtid-consistency = ON log-slave-updates = ON skip-slave-start = true slave-parallel-type = LOGICAL_CLOCK # slave-parallel-type有两个之,DATABASE和LOGICAL_CLOCK,DATABASE: 默认值,兼容5.6以schema维度的并行复制, LOGICAL_CLOCK: MySQL 5.7基于组提交的并行复制机制。 slave-parallel-workers = 8 #太多的线程会增加线程间同步的开销,建议4-8个slave线程 master_info_repository = TABLE relay_log_info_repository = TABLE relay_log_recovery = ON #从库只读 read_only = ON super_read_only = ON ``` 从数据库2my.ini: ``` [mysqld] server-id=3 #开启GTID复制 gtid-mode = ON enforce-gtid-consistency = ON log-slave-updates = ON skip-slave-start = true slave-parallel-type = LOGICAL_CLOCK # slave-parallel-type有两个之,DATABASE和LOGICAL_CLOCK,DATABASE: 默认值,兼容5.6以schema维度的并行复制, LOGICAL_CLOCK: MySQL 5.7基于组提交的并行复制机制。 slave-parallel-workers = 8 #太多的线程会增加线程间同步的开销,建议4-8个slave线程 master_info_repository = TABLE relay_log_info_repository = TABLE relay_log_recovery = ON #从库只读 read_only = ON super_read_only = ON ``` 重启所有主从服务器: 进入主数据库 ``` show master status; ``` mysql> show master status; +------------------+----------+--------------+------------------+-------------------+ | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set | +------------------+----------+--------------+------------------+-------------------+ | mysql-bin.000001 | 629 | | | | +------------------+----------+--------------+------------------+-------------------+ 1 row in set (0.00 sec) 每个从库执行 ``` CHANGE MASTER TO master_host = '127.0.0.1', master_port = 3306, master_user = 'root', master_password = 'root', master_log_file = 'mysql-bin.000001', master_log_pos = 629; START SLAVE; SHOW SLAVE STATUS; ``` 查看Slave_IO_Running和Slave_SQL_Running:Yes 则操作成功 MySQL同步故障:" Slave_SQL_Running:No" 解决办法 ``` STOP SLAVE; CHANGE MASTER TO master_auto_position = 0; STOP SLAVE; CHANGE MASTER TO master_host = '127.0.0.1', master_port = 3307, master_user = 'root', master_password = 'root', master_log_file = 'mysql-bin.000001', master_log_pos = 629; START SLAVE; SHOW SLAVE STATUS; ``` ##### 3.分区分表 ERROR 1267 (HY000): Illegal mix of collations (utf8_general_ci,IMPLICIT) and (utf8_unicode_ci,IMPLICIT) for operation '=' ``` SELECT SOMETHING FROM SOMEWHERE WHERE table_schema = given_database AND table_name = given_table AND index_name = given_index; ``` To: ``` SELECT SOMETHING FROM SOMEWHERE WHERE table_schema COLLATE utf8_unicode_ci = given_database AND table_name COLLATE utf8_unicode_ci = given_table AND index_name COLLATE utf8_unicode_ci = given_index; ``` ##### 4.docker中运行 ###### 1.下载dockerfile ``` mkdir /docker-shared/ cd /docker-shared git clone https://gitee.com/HALOBING/dockerfile.git ``` ###### 2.redis 不需要密码 ``` docker run --name redis -d --restart=always \ --publish 6379:6379 \ --volume /docker-shared/redis:/var/lib/redis \ redis:latest ``` 设置访问密码 ``` docker run -d --name redis -p 6379:6379 --restart=always redis:latest --requirepass "123456" ``` ###### 2.tomcat ####### build 镜像 准备:jdk-8u211-linux-x64.tar.gz、apache-tomcat-8.5.34.tar.gz 拷贝到 /docker-shared/dockerfile/tomcat/8.5 ``` cd /docker-shared/dockerfile/tomcat/8.5 docker build -t tomcat:8 . ``` ####### build 创建容器并运行tomcat 同时挂载上传文件目录和日志文件到宿主机、允许通过tcp aliasredis:aliasredis 访问redis ``` docker run -d --name tomcat -p 8888:8080 --restart=always \ --link redis:aliasredis \ -v /docker-shared/tomcat/logs:/usr/local/apache-tomcat-8.5.34/logs \ -v /home/userfiles/liangshan_cloud_pro:/home/userfiles/liangshan_cloud_pro \ tomcat:8 ``` ####### 查看日志 ``` docker logs -f -t --tail 50 tomcat ``` ###### 2.jenkins ####### build 镜像 ``` cd /docker-shared/dockerfile/jenkins docker build -t jenkins:2.138 . ``` ####### build 创建容器并运行jenkins 同时将程序挂载到宿主机、允许通过http://aliastomcat:8080 访问tomcat ``` docker run -d --name jenkins -p 8686:8080 \ --link tomcat:aliastomcat --restart=always \ -v /docker-shared/jenkins:/var/jenkins_home \ jenkins:2.138 ``` #### 使用说明 导入项目中sql文件到数据库,运行项目即可 #### 说明 新增页面中使用到girdSelect控件的需加上 useCode="false"参数,区分保存id还是code ####注意 导入数据下载下来的excel模板,请删除"隐患点名称"这一列,再填写模板进行后续的导入操作。 #### 安装 fusionpbx & freeswitch ``` docker run --net=host --privileged --restart=always --name fusionpbx -d hoangthienan/docker-fusionpbx-debian ``` postgressql数据库设置: ``` docker exec fusionpbx sudo -u postgres psql -c "ALTER USER fusionpbx WITH PASSWORD '123456';" ``` 访问fusionpbx:https://ip:80 安装fusionpbx时,数据库部分:数据库用户名/密码:fusionpbx/123456,其余默认即可。 #### openvpn server docker 安装 证书密码wfy--123 ``` docker volume rm ovpn-data-example docker volume create --name ovpn-data-example docker run -v ovpn-data-example:/etc/openvpn --log-driver=none --rm kylemanna/openvpn ovpn_genconfig -u tcp://223.86.174.84:8281 docker run -v ovpn-data-example:/etc/openvpn --log-driver=none --rm -it kylemanna/openvpn ovpn_initpki docker run --name ovpn -v ovpn-data-example:/etc/openvpn -d -p 8281:1194/tcp --restart=always --cap-add=NET_ADMIN kylemanna/openvpn #多用户 重复执行如下两条命令,*.ovpn在当前目录 docker run -v ovpn-data-example:/etc/openvpn --log-driver=none --rm -it kylemanna/openvpn easyrsa build-client-full fuyb nopass docker run -v ovpn-data-example:/etc/openvpn --log-driver=none --rm kylemanna/openvpn ovpn_getclient fuyb > fuyb.ovpn ```