宝塔面板 Java 手动部署
这是一种面向熟悉 Java 运维用户的高级部署方式。普通用户优先选择宝塔面板 Docker 部署,可以避免手动维护 Java、JAR 和启动目录。
1. 从源码构建 JAR
当前文档站不再提供独立 surveyking.jar 下载地址。请在构建机上安装 JDK 8,然后从源码构建:
git clone https://gitee.com/surveyking/surveyking.git
cd surveyking/surveyking-server/server
./gradlew clean :api:bootJar -Ph2 -x test
Windows 构建机执行 gradlew.bat。输出文件为:
api/build/libs/surveyking-v1.13.0.jar
把该 JAR 上传到服务器,例如 /www/wwwroot/surveyking/。
2. 安装运行环境
在宝塔“Java 项目管理器”或系统中安装 Java 11 运行时。确认:
java -version
为项目准备固定工作目录:
mkdir -p /www/wwwroot/surveyking/{config,db,files,logs}
3. 创建 Java 项目
不同宝塔版本的字段名称可能略有差异,核心配置如下:
| 配置项 | 建议值 |
|---|---|
| 项目目录/运行目录 | /www/wwwroot/surveyking |
| JAR | /www/wwwroot/surveyking/surveyking-v1.13.0.jar |
| Java | Java 11 |
| 端口 | 1991 |
| 启动参数 | --spring.profiles.active=h2 --server.port=1991 |
关键点是把“工作目录”固定为 /www/wwwroot/surveyking。H2 数据库、附件和配置都使用相对路径;工作目录变化会让程序看起来像一套新系统。
等价的命令如下:
cd /www/wwwroot/surveyking
java -jar surveyking-v1.13.0.jar \
--spring.profiles.active=h2 \
--server.port=1991
4. 初始化
启动成功后访问:
http://服务器 IP:1991/setup
- 轻量使用可以选择 H2,不需要安装 MySQL;
- 正式公网服务可以在宝塔中创建一个空的 MySQL 数据库,再在
/setup填写连接信息; v1.13.0会自动初始化数据库,不要手工导入init-mysql.sql。
5. 配置反向代理
在宝塔中创建站点,把域名反向代理到:
http://127.0.0.1:1991
申请 SSL 证书并开启 HTTPS。确认域名访问正常后,关闭公网 1991 端口,只允许本机 Nginx 访问后端。
6. 升级和备份
升级前:
- 在“系统管理 → 系统设置 → 数据备份”导出备份;
- 停止 Java 项目;
- 备份
config/、db/、files/,使用外部 MySQL 时另做数据库备份; - 替换 JAR,保持工作目录和启动参数不变;
- 启动项目并检查日志。
不要把 JAR、数据库和附件都放在临时目录中,也不要在服务运行时直接复制 H2 数据库文件。