为了简化部署,本教程使用宝塔面板进行基础环境的快速安装;
文档仅供新手参考部署,如对运行环境有其余标准,建议采用其他方式部署。如发现文档有不正确或者有更好方案能够解决问题,欢迎提出建议。
一、基础环境
宝塔面板安装
1.登录控制台后,输入:
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh
并且等待全部执行完成...
出现此界面时安装完成,可以使用外网面板地址和username、password进行面板访问
安装MySql
使用宝塔面板的应用商店,搜索mysql,并点击安装
选择数据库版本,一定一定一定要选择5.7!
等待任务处理完成即可
可以将mysql设置为首页显示,方便后期寻找
安装redis
步骤与上述一致,进入应用商店,寻找redis点击安装,此处没有版本要求,安装完毕即可!
安装Nginx
步骤同上,应用商店搜索Nginx,点击安装等待执行完毕即可
安装java一键部署
步骤同上,不做赘述
安装elasticsearch
ElasticSearch-7安装-详解 · 语雀
创建数据库
点击数据库-添加数据库,此处创建的数据库为了方便记忆为,数据库名称:tduck-pro,用户名:tduck,密码:请自行设定,点击提交即可!
二、构建后端Java项目
(需要安装JDK以及Maven)如果在win构建百度安装方案 这边用linux为例
-
- 安装jdk
- 拉取代码
- 编译程序
安装git
yum install git
# 用于拉取代码
安装jdk1.8
yum install -y java-1.8.0-openjdk-devel.x86_64
安装maven
参考链接 https://www.jianshu.com/p/dfccd5de6032
sudo wget http://repos.fedorapeople.org/repos/dchen/apache-maven/epel-apache-maven.repo -O /etc/yum.repos.d/epel-apache-maven.repo
sudo sed -i s/\$releasever/6/g /etc/yum.repos.d/epel-apache-maven.repo
sudo yum install -y apache-maven
拉取代码
git clone https://请输入私服地址/tduck/tduck-pro-platform.git
#拉取代码 会提示你输入账号密码
cd tduck-pro-platform
#进入拉取的代码目录
mvn clean package -Dmaven.test.skip=true
# 等待很长时间
cd tduck-api/target/
# 下面有一个tduck-api.jar 之后用用 划重点
三、构建前端项目
-
- 安装Nodejs
- 拉取代码
- 编译代码
安装node.js
curl --silent --location https://rpm.nodesource.com/setup_14.x | bash -
等待执行完成
yum install nodejs
等待执行完成
拉取代码
git clone https://请输入私服地址/tduck/tduck-pro-front.git
#拉取代码 会提示你输入账号密码
进入代码
cd tduck-pro-front
# 进入代码
安装依赖
npm install --registry=http://registry.npm.taobao.org
# 安装依赖 需要等待很久
编译项目
npm run build
# 编译完成tduck-pro-front目录会有一个dist文件夹 记住 后面要用
创建站点
打包好的前端用安装的nginx
创建PHP项目 前端打包的dist目录下的文件复制到创建的站点根目录下
进入站点目录,将打包好的 dist 文件夹内的全部文件复制到站点文件夹下
回到站点目录,点击站点,配置文件,将配置文件粘贴并保存
配置文件(默认单机部署参数情况下不用改,如果后端端口不是8998则需要自行修改):
server
{
listen 80;
server_name 你的网址;
index index.php index.html index.htm default.php default.htm default.html;
root /www/wwwroot/你的网址;
try_files $uri $uri/ /index.html;
#SSL-START SSL相关配置,请勿删除或修改下一行带注释的404规则
#error_page 404/404.html;
#SSL-END
#ERROR-PAGE-START 错误页配置,可以注释、删除或修改
#error_page 404 /404.html;
#error_page 502 /502.html;
#ERROR-PAGE-END
#PHP-INFO-START PHP引用配置,可以注释或修改
include enable-php-00.conf;
#PHP-INFO-END
#REWRITE-START URL重写规则引用,修改后将导致面板设置的伪静态规则失效
include /www/server/panel/vhost/rewrite/wj.szosc.cn.conf;
#REWRITE-END
#禁止访问的文件或目录
location ~ ^/(\.user.ini|\.htaccess|\.git|\.svn|\.project|LICENSE|README.md)
{
return 404;
}
# 前端代理
location /tduck-api/{
proxy_pass http://localhost:8998/tduck-api/;
add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Credentials: true;
add_header Access-Control-Allow-Methods GET,POST,OPTIONS,PUT,DELETE;
proxy_http_version 1.1;
# 连接延时
proxy_connect_timeout 3600s;
proxy_read_timeout 3600s;
proxy_send_timeout 3600s;
# IP 穿透
proxy_set_header Host $proxy_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
# WebSocket 穿透
proxy_set_header Origin "";
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
#一键申请SSL证书验证目录相关设置
location ~ \.well-known{
allow all;
}
location ~ .*\.(js|css)?$
{
expires 12h;
error_log /dev/null;
access_log /dev/null;
}
access_log /www/wwwlogs/wj.szosc.cn.log;
error_log /www/wwwlogs/wj.szosc.cn.error.log;
}
完成上述步骤后,检查80端口是否开放;并进行访问
默认部署密码:admin/12345678,登录后新建表单测试是否正常即可!