本文以 centos7为例说明 部署jeecg-cloud
## 安装java
1.查看是否有安装JDK(如果安装了java并且是java8可以不再安装)
```
java -version
```
如果存在java进程
查询JAVA相关进程
```
rpm -qa | grep java
```
关闭并删除所有java-开头的进程信息
```
rpm -e --nodeps java-1.8.0-openjdk-1.8.0.102-4.b14.el7.x86\_64
```
2、去下载linux版本的java文件
进入usr/local,解压JDK文件夹
```
cd /usr/local
tar -zxvf jdk-8u181-linux-x64.tar.gz
```
3、配置环境变量
vim /etc/profile
打开配置文件profile,配置环境变量 在文档最后 添加如下设置
```
JAVA\_HOME=/usr/jdk1.8.0\_181/ JRE\_HOME=/usr/jdk1.8.0\_181/jre CLASSPATH=.:$JAVA\_HOME/lib:/dt.jar:$JAVA\_HOME/lib/tools.jar PATH=$PATH:$JAVA\_HOME/bin
```
刷新环境变量
```
source /etc/profile
```
再检查JAVA环境变量
```
java -version
```
## 安装redis
2.1 检查是否有redis yum 源
```
yum install redis
```
如果没有源
下载fedora的epel仓库
```
yum install epel-release
```
重新安装
yum install redis
2.2、安装完成设置Redis
\# 启动redis
```
service redis start
```
\# 停止redis
```
service redis stop
```
\# 查看redis运行状态
```
service redis status
```
\# 查看redis进程
```
ps -ef | grep redis
```
设置redis为开机自动启动
```
chkconfig redis on
```
设置密码
```
vim /etc/redis.conf 修改密码
```
## 安装mysql
1 下载并安装MySQL官方的 Yum Repository
下载源
wget -i -c [http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm](http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm)
安装源
```
yum -y install mysql57-community-release-el7-10.noarch.rpm
```
安装mysql
```
yum -y install mysql-community-server
mysql 8
wget https://repo.mysql.com//mysql80-community-release-el8-1.noarch.rpm
rpm -ivh mysql80-community-release-el8-1.noarch.rpm
yum install mysql-server
systemctl enable mysqld.service #设置开机启动
```
2\. 修改密码
启动myql 服务
```
systemctl start mysqld.service
```
查看默认密码
```
grep "password" /var/log/mysqld.log
```
连接mysql
```
mysql -uroot -p
```
输入默认密码
修改密码(默认密码有复杂度校验)
```
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';
```
3、创建并导入数据
连接数据了
mysql -uroot -p 输入新密码
创建数据库
```
create database 数据名character set utf8;
```
切换数据库
use 数据名;
导入
source 数据库文件路径
导出
```
mysqldump -u dbuser -p dbname > 导入路径
```
## 开启远程控制
连接数据了
```
mysql -uroot -p 输入新密码
```
进入mysql数据库
use mysql;
修改user表中的
```
update user set Host='%' where User='root';
```
刷新
```
flush privileges;
```
## 修改其他配置
```
vim /etc/my.cnf 或者 vim /etc/my.cnf.d/mysql-server.cnf
```
4、安装rabbitmq(可选)
1\. 下载安装erlang
wget http://erlang.org/download/otp\_src\_22.1.tar.gz 或者直接下载将文件放到服务器上
解压
```
tar -zxvf otp\_src\_22.1.tar.gz
```
切换目录
```
cd otp\_src\_22.1
```
创建安装目录
```
mkdir -p /usr/local/erlang
```
在编译之前,必须安装以下依赖包
```
yum install -y make gcc gcc-c++ m4 openssl openssl-devel ncurses-devel unixODBC unixODBC-devel
```
编译
./configure --prefix=/usr/local/erlang
编译安装
make && make install
添加环境变量
vim /etc/profile
######### 添加如下内容 ###############
PATH=$PATH:/usr/local/erlang/bin
########################################
刷新环境变量
source /etc/profile
测试
输入 erl 出现下图说明安装成功

2\. 下载安装rabbitmq
下载源码包
wget [https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.7.8/rabbitmq-server-generic-unix-3.7.8.tar.xz](https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.7.8/rabbitmq-server-generic-unix-3.7.8.tar.xz)
\# 解压
```
tar -xvf rabbitmq-server-generic-unix-3.7.8.tar.xz -C /usr/local/
```
\# 添加环境变量
```
vim /etc/profile
```
\------ 添加如下内容 ------
```
PATH=$PATH:/usr/local/rabbitmq\_server-3.7.8/sbin
```
\# 重载一下环境变量
source /etc/profile
\# 添加web管理插件
```
rabbitmq-plugins enable rabbitmq\_management
```
官网下载死信插件 放到 rabbitmq的plugins 目录
启用死信插件 rabbitmq-plugins enable rabbitmq\_delayed\_message\_exchange
后台启动/停止
启动: rabbitmq-server -detached
停止: rabbitmqctl stop
添加用户
进入 rabbitmq sbin目录
添加admin用户,密码设置为springcluod。
rabbitmqctl add\_user springcluod springcluod
赋予权限
rabbitmqctl set\_user\_tags springcluod administrator
赋予virtual host中所有资源的配置、写、读权限以便管理其中的资源
rabbitmqctl set\_permissions -p / springcluod '.\*' '.\*' '.\*'
查看用户rabbitmqctl list\_users
查看插件 rabbitmq-plugins list
开启远程登录
\[rabbitmq安装目录\]\\ebin\\rabbit.app
找到 {loopback\_users, \[>\]} 改为 {loopback\_users, \[\]} 重启rabbitmq
## 安装Nacos
将nacos放到服务器上解压,删除 /data/nacos/data/derby-data
切换目录到bin
后台启动 nohup bash -f ./startup.sh -m standalone &
前台启动 bash -f ./startup.sh -m standalone
## 打包、启动java
将打包好的jar文件放到服务器上
后台启动 nohup java -jar jeecg-boot-modlule-system-admin.jar &
前台启动 java -jar jeecg-boot-modlule-system-admin.jar
以上启动方式2选1
依次启动业务模块和网关
7、安装nginx
安装依赖库
```
yum -y install pcre-devel
yum -y install openssl openssl-devel
```
下载安装(centos8不兼容1.8.0 换成 1.17.0)
wget [http://nginx.org/download/nginx-1.8.0.tar.gz](http://nginx.org/download/nginx-1.8.0.tar.gz)
解压
```
tar -zxvf nginx-1.8.0.tar.gz
```
切换目录
cd nginx-1.8.0
编译 (如果不用https with-http\_ssl\_module 可以不用安装)
./configure --with-http\_ssl\_module
安装
make&make install
安装后进入/usr/local/nginx/sbin目录
运行./nginx
修改nginx配置,默认配置文件在 /usr/local/nginx/conf 下面
vim /usr/local/nginx/conf/nginx.conf
如果没有安装ssl后期需要加上
安装依赖
yum -y install openssl openssl-devel
进入nginx安装目录
编译
./configure --with-http\_ssl\_module
编译
make
备份以前nginx
cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak
覆盖
cp objs/nginx /usr/local/nginx/sbin/nginx
重启nginx
./nginx -s reload
./nginx -s stop
./nginx
8、部署前台vue
1、在控制台终端输入npm run build 打包vue 将打包好的dist文件上传到服务器
2、配置nginx代理
```
server{
server\_name admin.lvgnc.com;
listen 80;
index index.jsp;
location / {
root /usr/jf/dist/;
index index.html index.htm;
try\_files $uri $uri/ /index.html;
}
}
```
重新加载nginx配置文件
/usr/local/nginx/sbin/nginx -s reload重新加载
nginx 配置
网关https证书配置
```
server {
listen 443 ssl;
server\_name sc.lvgnc.com;
index index.html index.htm;
ssl\_certificate /usr/jf/2987217\_sc.lvgnc.com.pem;
ssl\_certificate\_key /usr/jf/2987217\_sc.lvgnc.com.key;
ssl\_session\_timeout 5m;
ssl\_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl\_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl\_prefer\_server\_ciphers on;
location / {
proxy\_pass http://localhost:8888; # 内网IP
proxy\_set\_header HOST $host;
proxy\_set\_header X-Real-IP $remote\_addr;
proxy\_set\_header X-Forwarded-For $proxy\_add\_x\_forwarded\_for;
proxy\_set\_header X-Forwarded-Proto $scheme;
}
}
```
网关
```
server{
server\_name sc.lvgnc.com;
listen 80;
index index.jsp;
location / {
proxy\_pass http://localhost:9999;
proxy\_set\_header HOST $host;
proxy\_set\_header X-Real-IP $remote\_addr;
proxy\_set\_header X-Forwarded-For $proxy\_add\_x\_forwarded\_for;
proxy\_set\_header X-Forwarded-Proto $scheme;
}
}
```
后台页面
```
server{
server\_name admin.test.com;
listen 80;
index index.jsp;
location / {
root /usr/jf/dist/;
index index.html index.htm;
try\_files $uri $uri/ /index.html;
}
}
```
重启脚本
```
#!/bin/bash
PID=$(ps -ef | grep jeecg-system.jar | grep -v grep | awk '{ print $2 }')
if \[ -z "$PID" \]
then
echo Application is already stopped
echo jeecg-system start...
nohup java -jar /usr/ed/jeecg-system.jar &
else
echo jeecg-system close...
echo kill $PID
kill -9 $PID
echo jeecg-system start...
nohup java -jar /usr/ed/jeecg-system.jar &
fi
```
- 项目介绍
- 新手入门教程
- 开发环境准备
- 基础环境要求
- 基础环境与工具安装
- 开发环境搭建
- 如何启动项目
- 平台技术点
- Maven私服设置
- 切换其他数据库
- Websorm通过SVN下载项目
- docker搭建开发环境
- 前端多环境构建配置2.4+
- 快速开始
- HelloWorld
- 上线发布
- JAR部署方案
- WAR部署方案
- 极简部署方案
- Docker镜像制作
- JAR分离打包
- 开启Nginx压缩
- bak
- 2.3 Docker镜像制作
- JAR分离打包方案二
- 2.3前端配置API地址
- 微服务切换
- 微服务整体解决方案2.4+
- 单体升级为微服务方案2.4+
- 微服务快速调试2.4+
- 微服务熔断/降级/限流2.4+
- 微服务Feign接口调用示例2.4+
- jeecg-boot-starter 2.4+
- xxl-job定时任务集成2.4+
- Redisson分布式锁集成2.4+
- rabitmq消息队列集成2.4+
- Redis缓存集成2.4+
- 消息总线用法2.4+
- jeecg-cloud-module2.4+
- 单体升级为微服务方案2.3
- 系统监控跨域问题修复2.3
- 微服务中新增服务接口2.3
- 微服务上线发布
- 微服务上线部署(Windows)
- 微服务上线部署(Centos)
- 微服务上线部署(Ubuntu)
- docker-compose发布
- 2.3版微服务文档
- 微服务配置中心
- RabbitMq安装教程Win
- 通过docker-compose文件部署微服务项目
- 代码生成器
- 代码生成器简介
- 代码生成器使用教程
- 代码生成器配置文件
- 如何自定义生成器模板
- 弃用GUI模式(不建议使用)
- 代码生成器模板
- 如何使用代码生成器
- JAR方式发布如何使用代码生成器
- 生成代码优化
- Online导入表过滤规则
- 常见问题(代码生成)
- 后端开发技巧
- 常用问题汇总
- 自定义注解用法
- Spring缓存注解@Cacheable
- 字典翻译注解@Dict
- 数据权限注解@PermissionData
- 日志记录注解@AutoLog
- 菜单路由配置
- 菜单配置说明
- 带参数路由菜单
- 路由菜单规则
- 菜单快速SQL
- 聚合路由菜单
- 数据快照功能如何用?
- 快速创建module模块
- 旧:新建maven模块项目?
- 查询过滤器用法
- 系统日志怎么插入?
- 自定义sql分页实现
- 针对敏感数据,加密传递方案
- redis 如何使用?
- 事务如何使用?
- 动态数据源使用
- 定时任务如何开发?
- 系统通知接口
- 消息推送接口
- JeecgBoot连接达梦数据库
- 接口敏感数据安全
- 批量插入效率建议
- 短信接口配置(阿里大鱼短信)
- 自定义注解限制重复提交
- 邮箱配置文档
- 公文发文收文
- WPS配置文档
- 公文发文收文使用手册
- WPS集成代码解读
- 积木报表设计器数据集使用
- 父子编码使用说明
- 我的文档安全配置
- 文档预览
- 在线多数据源
- 导入校验工具类
- druid数据库密码加密
- 系统文件上传
- 统一文件上传规则
- MinIO配置
- 阿里云OSS配置
- UI前端开发技巧
- 如何更改默认主题
- Form表单开发特殊性
- Icon图标扩展方法
- vuex使用详解
- vue路由带参总结
- 全局配置文件
- 列表自定义列实现
- 国际化改造方案
- 常用命令
- 报表开发
- 报表开发技术点
- 自定义报表组件
- 源码解读
- 自定义组件
- 前端技巧
- components包下文件描述
- JDictSelectTag字典标签
- duplicateCheck表单字段重复校验通用JS
- JVxeTable行编辑
- 组件配置文档
- 自定义组件
- 封装自定义组件
- 自定义组件增强
- 使用示例
- 常见问题解答
- JEditableTable帮助文档
- JMultiSelectTag多选组件
- JPopup弹窗选择组件
- JSearchSelectTag字典表的搜索组件
- JSelectDepart部门选择组件
- JSelectMultiUser用户多选组件
- JSelectUserByDep根据部门选择用户
- JTreeDict分类字典树形下拉组件
- JTreeSelect树形下拉框 (异步加载)
- JInput 查询组件
- JCron 帮助文档
- JCategorySelect 帮助文档
- JUpload上传组件
- JImageUpload图片上传组件
- JSuperQuery高级查询组件
- JAreaLinkage省市县三级联动
- JEllipsis超长截取显示
- JDate 日期组件
- JCheckbox组件
- JCodeEditor组件
- JSelectMultiple多选下拉组件
- JTreeSelect树形下拉组件
- JImportModal组件
- JAsyncTreeList异步树表格
- JFormContainer使用文档
- JMarkdownEditor使用文档
- 前端开发坑(一定要注意)
- 按需加载方案
- 按需加载@减小打包
- JeecgBoot实战-按需加载方案
- 表格的换行与不换行
- 旧:表格的换行与不换行
- 主子表子表下拉框、时间框弹框被遮挡优化
- 前端依赖包package.json
- 如何实现多列表单
- 前端字典缓存用法
- 自定义首页
- 门户首页Portal权限控制
- 系统权限用法
- JAVA请求权限控制
- 页面按钮权限用法
- 列表列字段权限控制
- 表单权限
- 显示隐藏控制
- 禁用控制用法一
- 禁用控制用法二
- 子表行字段的禁用和隐藏控制
- 数据权限
- 数据权限规则篇
- 数据权限用法篇
- 编码对接数据权限(未用查询过滤器)
- 权限配置自定义SQL
- 二级部门权限管理
- 填值规则(编码生成)
- 校验规则(高级校验)
- 列表列字段导出权限示例
- 备份
- 通过URL方式配置数据权限
- Online表单
- Online菜单配置
- Online开发初体验
- Online表单配置
- Online表单一对多表单配置
- Online表单删除说明
- Online表单标准字段说明
- Online树列表表单配置
- Online表单配置参数说明
- online 导入导出值转换器
- Online表单填值规则配置
- Online表单排版
- Online树列表表单配置(个性化)
- Online表单查询配置说明
- Online表单使用表单设计器
- Online表单控件
- 下拉框@多选框@单选框
- 下拉多选
- 下拉搜索
- Popup控件
- 富文本控件
- 时间控件
- 用户选择器
- 部门选择器
- 自定义树控件
- 分类字典树控件
- Online之popup使用
- 下拉联动组件
- markdown编辑器
- 省市区组件
- 字段排列顺序调整
- 字段显示隐藏控制
- 字段校验规则使用
- 控件配置Href
- 控件默认值表达式
- 开关控件
- Online权限配置( 新版 20200914)
- 字段权限配置与授权
- 按钮权限配置与授权
- 数据权限配置与授权
- Online权限配置
- 列表字段权限(显示与隐藏)
- 表单字段权限(隐藏和禁用)
- 列表按钮权限(隐藏)
- 列表数据权限
- 树形表单数据权限配置
- 二次开发(在线增强)
- online基础篇-JS增强
- online基础篇-JS增强(表单渲染)
- JS增强 API
- 列表
- 表单
- JS增强 实战示例
- 列表自定义按钮
- 表单自定义按钮 改变控件的值
- 修改控件值【从表】
- 修改控件值【单(主)表】
- online表单JS增强实现下拉联动
- 表单提交前事件
- 页面加载时设置表单默认值
- online基础篇-SQL增强
- online基础篇-自定义按钮
- Online自定义按钮-表达式用法
- online基础篇-java增强
- Online java增强 导入
- Online java增强 导出
- Online java增强 查询
- online升级篇-表单API接口
- online升级篇-扩展控件类型
- edu
- Online表单专题课程
- 备注
- Online表单权限配置按钮/列/表单字段的显示或隐藏
- 列表权限
- 列表字段的显示或隐藏
- 列表操作按钮的显示或隐藏
- 列表自定义按钮的显示或隐藏
- 表单权限
- 表单字段的显示或隐藏
- 表单字段的禁用或可编辑
- Online导出支持图片
- Online表单视图功能
- JVXETable和JEditableTable切换方式
- 通过字段href实现3张表的关联
- 从数据库导入表单配置排除表名
- 表单配置[扩展参数]使用手册
- Online报表
- Online图表
- Online图表配置手册
- 列表数据显示规则
- 组合报表的配置方式
- 如何配置菜单
- 常见问题
- JS增强
- 参数说明
- Online报表
- online报表-使用步骤
- online报表-动态参数
- 如何配置报表菜单
- Online报表权限配置
- Online报表系统变量应用
- 参数说明
- Online报表排序
- 字段href
- 字典配置
- online报表-合计
- online报表-配置分组标题
- 高级实战技巧
- HBuilderX打包APP
- 1.Build-JeecgBoot项目
- 2.HBuilderX 打包APP
- HBuilder打包APP手机端安装配置教程
- Websocket业务对接
- WebSocket的集成
- SAAS多租户用法
- 如何集成积木报表
- 【内测】使用jdk14启动项目
- CAS单点登录
- CAS单点登录服务端准备
- 单点登录流程图
- 单点登录配置说明(2.3.1+)
- archive
- 2.JeecgBoot后端对接CAS步骤
- 3.JeecgBoot前端项目对接CAS步骤(2.3.0)
- 表单设计器
- 介绍
- 基础操作
- 配置字段属性
- 配置表单属性
- 配置到菜单
- 移动表单设计
- 表单多视图(移动)
- 表单组件
- 基础字段
- 单选、多选、下拉框
- 日期、时间选择器
- 高级组件
- 文本
- 按钮
- 分隔符
- 文件上传和图片上传
- 布局组件
- Tabs
- 卡片
- 栅格布局
- JEECG字段
- 设计子表
- 表字典(POPUP/下拉)
- 用户组件、部门组件
- 高级操作
- JS增强
- 全局JS增强
- 按钮JS增强
- JS增强示例
- CSS增强
- 表单增强
- 自定义接收URL
- 外部JS\CSS增强
- 控件取值
- 默认值表达式
- 远程API取值
- 填值规则
- 数据绑定映射
- 业务场景
- 远端选项数据
- 高级查询
- Elasticsearch安装与配置
- 高级查询界面
- 权限配置
- 表单字段权限
- 列表数据权限
- 列表按钮权限
- 角色授权
- 路由配置
- 表单对外接口
- 二次开发
- 自定义新控件
- 上传配置(七牛配置)
- 上传云存储自定义2.4+
- 旧:基础操作手册
- 旧:高级操作手册
- AutoPOI(Excel工具)
- 快速文档
- 单表数据导出多表头示例
- 单表数据多表头导入注意
- 导出自定义选择列导出
- @excel注解使用
- excel根据模板导出
- 一对多导出needMerge
- 第三方登录
- 企业微信配置
- 钉钉配置
- 企业微信集成方案
- APP开发
- 后台推送消息给移动端
- 小结
- 编码规范
- 代码规范
- 建表规范
- 个人备忘录
- 小白实战课程
- 任务节点直接关联多节点分支
- 使用排他网管的分支
- 并行网管分支
- 任务节点人员配置表达式使用
- 会签属性循环集合表达式使用
- 流程监听
- 节点配置地址
- 多数据源使用
- 自定义开发流程小结
- 登录时不选择部门不能进入主页面
- docker安装中文字体
- cloud system api
- jvxe升级 - LOWCOD-812
- cloud 跨域问题
- online同步数据库 问题
- online自动测试
- jeecg-uniapp开发
- 开发环境搭建
- 项目简介
- 打包项目
- APP打包
- 微信小程序打包
- H5打包
- 小程序发布
- API接口配置
- uniapp推送
- 后台定时unipush推送配置
- FQA
- 数据库兼容问题
- postgres int类型 实体布尔类型插入数据失败
- docker制作达梦数据库镜像