CentOS7安装悟空CRM教程(Java版本)

一、环境安装

前置条件:准备一台416G及以上的服务器或者虚拟机

服务器推荐:

阿里云

https://www.aliyun.com/minisite/goods?userCode=f2dsq2bc

腾讯云

https://cloud.tencent.com/act/pro/2024spring?from=21954&cps_key=bd5e36f1fd7ae0e8a60edf54a23da65e

安装java环境

yum -y install java-1.8.0-openjdk-devel;

安装redis环境并设置开机自启


      yum -y install epel-release;
      yum -y install redis;
      chkconfig redis on;
      #-- 修改redis密码为123456
      yum -y install vim;
      vim /etc/redis.conf;
      #-- 在文件最下面追加一行
      requirepass 123456
      #-- 或者输入 / 搜索 # requirepass foobared
      #-- 将前面的#删除,将foobared改为123456
      #-- 修改完成之后 :wq 保存并退出,重启redis
      service redis restart;

安装maven环境


  yum -y install maven;

安装mysql5.7数据库

yum -y install wget;
  wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm;
  yum -y install mysql57-community-release-el7-10.noarch.rpm;
  yum -y install mysql-community-server;
  #出现mysql的公钥尚未安装报错,先执行下面的命令,然后执行4,不报错可忽略
  rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
 
  sudo systemctl start mysqld.service;
  sudo systemctl enable mysqld.service;

  #--查看安装的mysql默认密码,如下图所示

  grep "password" /var/log/mysqld.log


  #--进入mysql 例:mysql -u root -pGXOO%eiI/7o>
  mysql - u root -p"此处为上一步的默认密码"

  #--修改mysql密码,这里设置成了password,如下图所示
  set global validate_password_policy=LOW;
  ALTER USER 'root'@'localhost' IDENTIFIED BY 'password';


  #--退出
  exit

  #--修改mysql配置
  vim /etc/my.cnf;

  #--输入 i 进入编辑模式,修改sql_mode设置,如下图所示,将下面sql_mode配置复制,到 [mysqld]下使用 shift+insert 粘贴
  sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION


  #--修改完毕,按esc按键,然后 :wq 保存并退出,重启mysql
  service mysqld restart;

安装elasticsearch


  #-- 在opt目录下安装
  cd /opt;

  #-- 下载elasticsearch6.8.6
  wget https://file.72crm.com/static/elasticsearch-6.8.6.zip;

  #-- 下载analysis-icu-6.8.6分词器插件
  wget https://file.72crm.com/static/analysis-icu-6.8.6.zip;

  #--下载unzip
  yum -y install unzip

  #--解压刚才下载的elasticsearch
  unzip elasticsearch-6.8.6.zip
 
  #--将分词器插件解压到elasticsearch/plugins目录下
  unzip analysis-icu-6.8.6.zip -d elasticsearch-6.8.6/plugins/analysis-icu-6.8.6;

  #--创建elasticsearch用户
  useradd elasticsearch;

  #--赋予用户目录权限
  chown -R elasticsearch:elasticsearch elasticsearch-6.8.6;

  #--切换至elasticsearch用户
  su elasticsearch

  #--启动
  cd elasticsearch-6.8.6/bin
  ./elasticsearch -d
  #--退出elasticsearch用户
  exit

下载其他依赖


  #--在opt目录下安装
  cd /opt;
  #--下载nacos
  wget https://file.72crm.com/static/nacos-server-1.2.1.zip;
  #--解压nacos到opt目录
  unzip nacos-server-1.2.1.zip -d /opt;

  #--下载seata
  wget https://file.72crm.com/static/seata-server-1.2.0.zip;
  #--解压seata到opt目录
  unzip seata-server-1.2.0.zip -d /opt;

  #--下载sentinel
  wget https://file.72crm.com/static/sentinel-dashboard-1.7.2.jar;
  #--将sentinel放到指定目录
  mkdir /opt/sentinel;
  mv sentinel-dashboard-1.7.2.jar /opt/sentinel/sentinel.jar;

  #--删除已解压的zip文件
  rm -rf nacos-server-1.2.1.zip;
  rm -rf seata-server-1.2.0.zip;

下载悟空CRM源码


  #--下载git
  yum -y install git;

  #--下载代码到/opt目录
  cd /opt;
  git clone https://gitee.com/wukongcrm/crm_pro.git;

  #-- 编译
  cd crm_pro;

  #--打包,第一次打包会比较慢,请耐心等待
  mvn clean -Dmaven.test.skip=true package;

  #-- 创建package文件夹
  mkdir /opt/package;

  #--将打包后代码复制到一个目录,方便统一管理
  cp admin/target/admin.zip /opt/package;
  cp authorization/target/authorization.zip /opt/package;
  cp crm/target/crm.zip /opt/package;
  cp gateway/target/gateway.zip /opt/package;
  cp bi/target/bi.zip /opt/package;
  cp examine/target/examine.zip /opt/package;
  cp oa/target/oa.zip /opt/package;
  cp work/target/work.zip /opt/package;
  cp job/target/job.zip /opt/package;
  cp hrm/target/hrm.zip /opt/package;
 
  #-- 解压对应文件
  cd /opt/package;
  unzip admin.zip -d admin;
  unzip authorization.zip -d authorization;
  unzip crm.zip -d crm;
  unzip gateway.zip  -d gateway;
  unzip bi.zip -d bi;
  unzip examine.zip -d examine;
  unzip oa.zip -d oa;
  unzip work.zip -d work;
  unzip job.zip -d job;
  unzip hrm.zip -d hrm;

  #-- 导入数据库信息
  #-- 进入数据库
  mysql -uroot -ppassword

修改配置信息


  #-- 创建nacos数据库
  create database nacos character set utf8mb4 collate utf8mb4_general_ci;
  use nacos;
  source /opt/crm_pro/DB/nacos.sql;

  #-- 创建seata数据库
  create database seata character set utf8mb4 collate utf8mb4_general_ci;
  use seata;
  source /opt/crm_pro/DB/seata.sql;

  #-- 创建xxl_job数据库
  create database xxl_job character set utf8mb4 collate utf8mb4_general_ci;
  use xxl_job;
  source /opt/crm_pro/DB/xxl_job.sql;

  #-- 创建crm数据库
  create database wk_crm_single character set utf8mb4 collate utf8mb4_general_ci;
  use wk_crm_single ;
  source /opt/crm_pro/DB/wk_crm_single.sql;

  #-- 退出数据库
  exit;

  #-- 修改nacos持久化到DB

  cd /opt/nacos/conf;
  vim application.properties;
  #-- 按 i 进入编辑模式,将 以下配置文件取消注释,如下图所示
  #-- spring.datasource.platform  db.num  db.url.0    db.user    db.password


  #-- 修改完成之后 :wq 保存并退出
  #-- 启动nacos
  cd /opt/nacos/bin
  sh startup.sh -m standalone
 
  #-- 配置seata持久化到nacos
  cd /opt/seata/conf/;
  vim registry.conf;
  #-- 按 i 进入编辑模块,将registry{} 和 config{}下的type="file" 改为 type="nacos"
  #-- 修改完成之后 :wq 保存并退出,然后启动seata服务
  cd /opt/seata/bin;
  nohup sh seata-server.sh > log.out 2>&1 &

  #-- 启动sentinel
  cd /opt/sentinel;
  nohup java -Xms128m -Xmx512m -Dserver.port=8079 -Dproject.name=sentinel-dashboard -jar sentinel.jar &
 
  #-- 下载xxl-job 2.1.2版本
  cd /opt
  git clone -b 2.1.2 https://gitee.com/xuxueli0323/xxl-job.git
  cd xxl-job;
  修改xxl-job的配置文件
  vim xxl-job-admin/src/main/resources/application.properties
  #-- 按 i 进入编辑模块,将server.port改为7070
  #-- 修改spring.datasource.url,spring.datasource.username,spring.datasource.password参数,如下图所示


  #-- 修改完成之后 :wq 保存并退出,执行打包流程
  mvn clean -Dmaven.test.skip=true package;
  #-- 启动xxl-job-admin
  mkdir /opt/xxl-job-admin;
  cp xxl-job-admin/target/xxl-job-admin-2.1.2.jar /opt/xxl-job-admin
  cd /opt/xxl-job-admin/
  nohup java -Xms128m -Xmx512m -jar xxl-job-admin-2.1.2.jar> log.out 2>&1 &

启动项目


  cd /opt/package/admin/ && sh 72crm.sh start;
  cd /opt/package/authorization/ && sh 72crm.sh start;
  cd /opt/package/crm/ && sh 72crm.sh start;
  cd /opt/package/gateway/ && sh 72crm.sh start;
  cd /opt/package/bi/ && sh 72crm.sh start;
  cd /opt/package/examine/ && sh 72crm.sh start;
  cd /opt/package/oa/ && sh 72crm.sh start;
  cd /opt/package/work/ && sh 72crm.sh start;
  cd /opt/package/job/ && sh 72crm.sh start;
  cd /opt/package/hrm/ && sh 72crm.sh start;
  #-- 项目启动完成

注册账号


访问: http://127.0.0.1:8443/index.html进入登录页面
如果没有注册,会进入一个注册页面,在页面输入自己手机号,密码,序列号点击注册即可
其中激活序列号:
6EA74C261C4BA344BC716FCD68295694BABFE016F5B7FA4890E4E29B0F52A5D965EE4A1AF633633D4573A2559630986F976D8F2920D688686CB60967F6FFB9FDADE6AC6DFD39416DE175D0DE01699C816244C16EE4E533A959E3ED0653143A7363E5B98E62126A78CDC5578636F456D29FD2B063FCBED837D50B10450C6FFBF0290DB782C8D4525864A96A98C37C0106FB5D8392A7E828F0BEFA86B4CD28BEBE83628A59BB23F60B7799A22C8D7B2039ED30F05492E9D2A2E2A03D7AC0199EA2CE529D561AE622B3C0DECC50D8A223BC5DA03E3AFF1150F0F217B0BE0400835369329DB74454870D5314DBA7C24B98CCE5600CBDAF264A21974FA3C85E7EAF0A

注意事项


 #-- 启动命令可以写成sh脚本,方便下次重启
 #-- 项目对应模块的解压,打包,运行可以搞成批处理脚本
 #-- 72crm项目启动失败,错误日志在/opt/package/对应模块/logs下面
 #-- 如更改前端文件,需替换前端文件,在前端打包完成后,将打包生成的dist文件夹放到gateway模块下,重命名为public
 #-- cd 前端文件目录
 #-- rm -rf /opt/package/gateway/public
 #-- cp -R dist /opt/package/gateway/public

NGINX配置


#--安装nginx
yum install -y nginx
#--验证nginx安装是否成功
 nginx -V
#--创建CRM的配置
 vi /etc/nginx/conf.d/crm.conf
 #--将下面配置复制,并修改www.yourdomain.com为真实域名
 #-- 修改完成之后 :wq 保存并退出
#检测配置文件语法是否正确
nginx -t
#重新加载Nginx配置
nginx -s reload

Nginx
    server {
        listen       80;
        server_name  www.yourdomain.com;
        client_max_body_size 100M;
        location / {
            proxy_set_header HOST $host;
            proxy_set_header X-Forwarded-Proto $scheme;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_pass   http://127.0.0.1:8443/;
        }
        location /nacos/ {
                proxy_set_header HOST $host;
                proxy_set_header Host $host:$server_port;
                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;
                proxy_connect_timeout 60;
                proxy_send_timeout 120;
                proxy_read_timeout 120;
                proxy_pass   http://127.0.0.1:8848/nacos/;
            }
        location /xxl-job-admin/ {
                proxy_set_header HOST $host;
                proxy_set_header Host $host:$server_port;
                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;
                proxy_connect_timeout 60;
                proxy_send_timeout 120;
                proxy_read_timeout 120;
            proxy_pass   http://127.0.0.1:7070/xxl-job-admin/;
        }
          location /file/preview/ {
                proxy_buffering off;
                proxy_set_header Host $host;
                proxy_set_header proxyHost $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;
                proxy_connect_timeout 60;
                proxy_send_timeout 120;
                proxy_read_timeout 120;
                proxy_pass   http://127.0.0.1:8012/;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }

注意:Nginx 默认的 client_max_body_size 配置大小为 1m,所以此示例配置文件加上了 client_max_body_size 1024m; 这行配置。当然,100M 可根据你的需要自行修改。

server_name 对应是域名,需要将"www.yourdomain.com" 换成自己的真实域名

常见问题

1.文件上传报错

查看admin 模块日志,根据提示创建对应的Spring Boot的临时文件目录

悟空CRM采用全新的前后端分离模式,本仓库代码中已集成前端vue打包后文件,可免去打包操作 如需调整前端代码,请单独下载前端代码,前端代码在根目录的ux文件夹中 主要技术栈 核心框架:jfinal3.8 缓存:redis 数据库连接池:Druid 工具类:hutool,fastjson,poi-ooxml 定时任务:jfinal-cron 项目构建工具:maven Web容器:tomcat,jetty,undertow(默认) 前端MVVM框架:Vue.JS 2.5.x 路由:Vue-Router 3.x 数据交互:Axios UI框架:Element-UI 2.6.3 安装说明 配置java运行环境,redis环境,mysql环境将目录doc下的72crm.sql导入到数据库,修改resources/config/erpsnow-config.txt下的数据库以及redis的配置文件undertow启动端口号在resources/config/undertow.txt下修改jetty启动端口号在Application.java中修改 部署说明 本项目JDK要求JDK8及以上 一、Tomcat部署 javax.servlet javax.servlet-api 4.0.1 provided 取消以上代码的注释,将jetty和undertow的引用注释掉,将packaging从jar改为war然后运行maven package命令,将war包放在tomcat/webapps目录下 二、Jetty部署 com.jfinal jetty-server 2019.3 provided 取消以上代码的注释,将tomcat和undertow的引用注释掉,将packaging改为jar其他同Undertow 三、Undertow(默认) com.jfinal jfinal-undertow 1.5 取消以上代码的注释,将jetty和undertow的引用注释掉,将packaging改为jar运行 maven package。将上述打包命令生成的 zip 文件上传到服务器并解压,将目录下的 72crm.sh/72crm.bat 放到解压后的目录下,运行即可 更换启动方式jetty和undertow时,需要更改Application.java中的启动文件 前端部署 安装node.js 前端部分是基于node.js上运行的,所以必须先安装node.js,版本要求为6.0以上 使用npm安装依赖 下载悟空CRM9.0前端代码; 可将代码放置在后端同级目录frontend,执行命令安装依赖: npm install 修改内部配置 修改请求地址或域名:config/dev.env.js里修改BASE_API(开发环境服务端地址,默认localhost) 修改自定义端口:config/index.js里面的dev对象的port参数(默认8080,不建议修改) 运行前端 npm run dev 注意:前端服务启动,默认会占用8080端口,所以在启动前端服务之前,请确认8080端口没有被占用。 程序运行之前需搭建好Server端
悟空CRM是一款开源的客户关系管理系统,它基于PHP语言开发,并且是在Apache、MySQL、PHP(简称AMP)的环境下运行的。因此,在CentOS 7上安装悟空CRM PHP版需要按照以下步骤进行操作: 1. 首先,确保系统已经安装了AMP环境。可以使用以下命令确认安装情况: ``` yum list installed httpd yum list installed mariadb-server yum list installed php ``` 2. 如果AMP环境未安装,可以通过以下命令来进行安装: ``` yum install httpd yum install mariadb-server yum install php ``` 3. 安装完成后,启动Apache和MySQL服务: ``` systemctl start httpd.service systemctl start mariadb ``` 4. 设置开机自启动: ``` systemctl enable httpd.service systemctl enable mariadb ``` 5. 下载悟空CRM安装文件,可以从官方网站获取到最新的版本。 6. 将下载的安装文件解压到Apache的默认网站目录(默认为/var/www/html): ``` tar -zxvf wukong-crm-php-x.x.x.tar.gz -C /var/www/html/ ``` 7. 创建MySQL数据库和用户: ``` mysql -u root -p CREATE DATABASE wukongcrm; CREATE USER 'wukonguser'@'localhost' IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON wukongcrm.* TO 'wukonguser'@'localhost'; FLUSH PRIVILEGES; exit ``` 8. 修改悟空CRM的配置文件,将数据库信息和管理员账户等信息修改为正确的值: ``` cd /var/www/html/wukong-crm-php-x.x.x/ cp config.php.example config.php vi config.php ``` 9. 在浏览器中输入服务器的IP地址或域名,即可访问悟空CRM安装界面。按照页面上的提示进行安装配置即可。 以上就是在CentOS 7上安装悟空CRM PHP版的主要步骤。安装过程中需要根据具体环境进行一些微调,但是以上是大致的操作流程。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值