宝塔部署文档
TDuckX部署文档
部署前必读
为了简化部署,本教程使用宝塔面板进行基础环境的快速安装;文档仅供新手参考部署,如对运行环境有其余标准,建议采用其他方式部署。如发现文档有不正确或者有更好方案能够解决问题,欢迎提出建议。
- ⚠️按照此部署教程完成部署后,需要进行文件存储配置。
- ⚠️ ️完成部署后还有部分功能需要进行参数配置之后才能够正常使用。
- ⚠️ 配置页面路径:后台管理>系统管理>系统设置。
💁 参考配置:
一、基础环境
1.宝塔面板安装
https://www.bt.cn/new/index.html
2.安装MySql
安装完成宝塔后,进入宝塔后台,mysql版本需要>=8.0。使用宝塔面板的应用商店,搜索mysql,并点击安装
3.安装redis
安装最新稳定版即可。
步骤与上述一致,进入应用商店,寻找redis点击安装,此处没有版本要求,安装完毕即可!
4.安装Nginx
安装最新稳定版即可。步骤同上,应用商店搜索Nginx,点击安装等待执行完毕即可
5.安装java一键部署
宝塔商店里面没有 jdk,可以在网站>java项目>项目环境中安装JDK1.8
6.创建数据库
点击数据库-添加数据库,此处创建的数据库为了方便记忆为,数据库名称:tduck-pro,用户名:tduck,密码:tduck@123(默认);如果自行设定,请修改tduck-x-platform>tduck-api>src>main>resources>application-prod.yml中的数据库密码,然后重新编译后端项目!
二、构建后端Java项目
建议使用本地环境编译jar文件,此处以在服务器安装环境为例,稍微有点麻烦!
如果在winServer构建,需要自行百度安装方案 此处使用linux为例
1.安装git
用于拉取代码
yum install git

2.安装jdk1.8
yum install -y java-1.8.0-openjdk-devel.x86_64

3.安装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
或者使用
sudo yum install -y maven

4.拉取代码
拉取代码 会提示你输入账号密码
git clone https://请输入私服地址/tduck/tduck-x-platform.git
进入拉取的代码目录
cd tduck-x-platform
5.打包后端项目
进入项目根目录,tduck-x-platform下执行
mvn clean package -DskipTests=true
执行打包命令,等待一段时间
cd tduck-api/target/
最终target目录下有一个tduck-api.jar 之后用到 ⚠️ 划重点
6.上传jar文件
选择刚打包的tduck-api.jar上传到宝塔的指定目录

7.导入数据库文件
在上面步骤创建的 tduck-x-platform 文件夹目录的 doc 目录中,找到 tduck-x.sql 文件进行导入

8.新建java项目
创建一个java项目,选择刚上传的tduck-api.jar,端口设置为8996(仅供参考,端口号可以自己随便设),jdk设置为1.8(先在环境设置中选择jdk1.8安装),选择root用户,点击保存即可
- 请注意,如果此时选择外置配置文件启动,请将配置文件放在jar文件同级目录,然后执行命令后面输入空格并追加: --spring.profiles.active=custom ;从而指定该文件启动

9.启动项目
点击项目状态,一键启动,启动成功后可以看到资源使用率占比
也可以点击Java项目详情,查看项目日志,出现 ======== TduckX 2.x started >> 即为成功!
- 如果没有启动成功前端访问会报502错误
- 此时需要检查数据库链接、redis配置账号密码等
- 如果还不能启动请尝试重新打包再试

三、构建前端项目
1. 安装Nodejs
2. 拉取代码
3. 编译代码
1.安装node.js
curl --silent --location https://rpm.nodesource.com/setup_16.x | bash -
执行命令,等待执行完成
yum install nodejs
执行,等待执行完成

2.拉取代码
git clone https://请输入私服地址/tduck/tduck-x-front.git
拉取前端代码 会提示你输入账号密码
3.进入代码目录
cd tduck-x-front
进入前端代码 目录
4.安装依赖
pnpm install --registry=http://registry.npm.taobao.org
安装依赖 需要等待很久

请注意,如果使用npm出现错误,请做如下检查:
1.node版本建议使用16.11.1
2.尝试使用yarn 进行项目打包,yarn 安装文档:https://yarn.bootcss.com/docs/install/index.html#gentoo-stable
3.确认命令执行的目录为前端项目根目录
5.编译项目
pnpm run build
编译完成tduck-x-front目录会有一个dist文件夹,请记住该文件路径, 后续步骤需要使用
6.创建站点
打包好的前端用安装的nginx 创建PHP项目,前端打包的dist目录下的文件复制到创建的站点根目录下;请注意dist文件夹内的所有文件需要复制到创建的站点根目录,完成覆盖。

前端配置文件修改
点击前端项目>配置文件,然后将下列Nginx文件复制进去(注意端口号需要和后端项目启动的端口号保持一致),点击保存。

注意事项:出现404、502错误一定是nginx文件的问题,请仔细检查相关配置,或者重启nginx服务,重载配置
# 出现404问题时,复制此配置保存重试
try_files $uri $uri/ /index.html;
# 核心配置,前端代理
location /tduck-api/{
proxy_pass http://localhost:8996/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_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";
}
完成上述步骤后,检查80端口是否开放;并进行访问
默认密码
默认部署密码:admin/12345678,登录后新建表单测试是否正常即可!