宝塔面板部署项目
鸣谢
本篇宝塔部署指南由 Gitee@KAI(莫愁) 大佬编写,感谢大佬的开源贡献。
环境要求
- 宝塔面板(下方示例为宝塔 9.5.0)
- Java 运行环境 (已安装并配置, OpenJDK 17)
- MySQL 数据库 (已安装并配置, Mysql8.x)
- Redis 服务 (已安装并配置, 5.x以上)
部署步骤
1. 上传项目文件
- 登录宝塔面板
- 进入文件管理
- 在服务器上创建项目目录,例如:
/www/wwwroot/continew-admin
- 按图片顺序执行 可见有一个app的目录
- 将打包好的项目文件(位于 continew-webapi 目录下)上传到该到
/www/wwwroot/continew-admin
目录下
2. 配置数据库
- 在宝塔面板中进入数据库管理
- 创建新的数据库,记录数据库名、用户名和密码
- 如果你配置文件的
spring.liquibase.enable=true
可以跳过步骤4 因为他会在启动的时候自动运行 - 执行数据库脚本 数据库脚本
continew-webapi/src/main/resources/db/changelog
里
3. 配置项目环境变量
- 修改项目配置文件
application-prod.yml
,配置以下信息:这步可以在本地先改好
yamlspring: datasource: url: jdbc:mysql://localhost:3306/你的数据库名?serverTimezone=Asia/Shanghai&useSSL=true&useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&autoReconnect=true&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true username: 你的数据库用户名 password: 你的数据库密码 redis: host: localhost port: 6379 password: 你的Redis密码(如果有)
4. 配置Java项目运行
- 脚本运行 进入我们的项目文件夹
/www/wwwroot/continew-admin/app/bin
shell
nohup /www/server/java/jdk-17.0.8/bin/java -jar -XX:+UseZGC -Djava.security.egd=file:/dev/./urandom -Dspring.profiles.active=prod continew-admin.jar > nohup.out 2>&1 &
/usr/lib/jvm/java-17-openjdk-amd64/bin/java
是你的Java安装目录 如果只有一个版本可以直接用 java -jar -argsxxx(一个服务器可以安装多个Java版本) 当我们看见图中内容就代表启动成功了 2. 宝塔运行
如图所示
5. 启动项目
- 配置完成后,点击"启动"按钮
- 查看运行日志,确保项目正常启动
- 访问
http://你的服务器IP:端口号
测试项目是否正常运行如果开启防火墙需要先放行端口 - 如果是云服务器需要到安全组放开
常见问题处理
如果项目无法启动,请检查:
- 端口是否被占用
- 数据库连接是否正确
- Redis连接是否正确
- 日志中是否有具体错误信息
如果访问项目出现502错误:
- 检查项目是否正常运行
- 检查反向代理配置是否正确
- 检查服务器防火墙设置
维护说明
项目更新步骤:
- 停止当前运行的项目
- 上传新的JAR包
- 重新启动项目
日常维护:
- 定期查看系统日志
- 监控服务器资源使用情况
- 定期备份数据库
注意事项
- 部署前请确保已经完成了所有的环境安装和配置
- 建议在生产环境部署前在测试环境进行充分测试
- 重要数据请定期备份
- 建议配置服务器防火墙,只开放必要的端口
- 生产环境建议使用域名和SSL证书,提高安全性