12 Commits

Author SHA1 Message Date
WrBug 419c68c024 fix: 修复本地 Docker 构建时 frontend/dist 和 backend/build 不存在的问题
- 移除 Dockerfile 中无效的 COPY frontend/dist 指令
- 改进前端构建逻辑,添加外部产物检查
- 改进后端构建逻辑,支持复制外部构建的 JAR 文件
- 在 deploy.sh 中添加创建占位符目录步骤,避免 COPY 失败
- 保持与 GitHub Actions 构建流程的兼容性(BUILD_IN_DOCKER=false)

修复了本地使用 ./deploy.sh 部署时的构建错误:
"failed to calculate checksum: /frontend/dist: not found"
2026-01-21 21:04:25 +08:00
WrBug 8889803dd7 fix: 修复 Dockerfile 中前端产物复制逻辑
- 修复 BUILD_IN_DOCKER=true 时 frontend/dist 不存在的问题
- 当 BUILD_IN_DOCKER=true 时,RUN 已经创建了 dist 目录
- COPY frontend/dist ./dist 现在应该能正常工作
2026-01-21 20:56:57 +08:00
WrBug 64a78406ed fix: 修复 Docker 构建时找不到前端产物的问题
- 从 .dockerignore 移除 frontend/dist 和 backend/build,使外部构建产物可被 Docker 使用
- 在 GitHub Actions 中添加构建上下文准备步骤,验证产物存在
- 更新 Dockerfile 注释,说明构建产物在不同场景下的使用
2026-01-21 04:16:01 +08:00
WrBug 59297ec52f fix: 修复 Dockerfile 在 BUILD_IN_DOCKER=false 时找不到前端产物的问题
- 在构建阶段先从构建上下文复制外部产物
- 如果 BUILD_IN_DOCKER=true,编译会覆盖外部产物
- 如果 BUILD_IN_DOCKER=false,使用已复制的外部产物
2026-01-21 04:06:23 +08:00
WrBug 26dd3bb387 feat: 实现系统动态更新功能和 Release 创建脚本
主要变更:

1. 动态更新功能
   - 新增 Python 更新服务 (docker/update-service.py)
   - 添加系统更新前端页面 (frontend/src/pages/SystemUpdate.tsx)
   - 配置 Nginx 代理更新服务 API
   - 更新 Docker 启动脚本支持多进程管理
   - 修复权限验证接口 (AuthController.verify)

2. Release 创建脚本
   - 新增 create-release.sh 脚本支持快速创建 GitHub Release
   - 支持自动拼接 -beta 后缀(pre-release)
   - 支持无交互模式(--yes 参数)
   - 添加详细的使用文档

3. GitHub Actions 增强
   - 添加更新包构建和上传流程
   - 支持 Pre-release 检测和过滤

4. 文档完善
   - 添加动态更新技术方案文档
   - 添加 Docker 版本号确定流程文档
   - 添加 Release 脚本使用说明
2026-01-21 03:34:16 +08:00
WrBug b58bb267a1 feat: 添加 Docker 容器时区配置,支持通过 .env 自定义 2026-01-11 14:36:49 +08:00
WrBug b069e54b89 feat: 添加版本号显示和自动构建/删除 Docker 镜像功能
- 添加前端版本号显示(桌面端和移动端)
- 实现 GitHub Actions 自动构建和推送 Docker 镜像
- 实现删除 release 时自动删除对应 Docker 镜像
- 支持版本号格式:v数字.数字.数字 或 v数字.数字.数字-后缀
- 添加版本号管理文档
- 更新 Dockerfile 和部署脚本支持版本号构建参数
2025-12-07 16:46:18 +08:00
WrBug f33f03a4a8 fix: 使用 root 用户启动 Nginx,后端应用以 appuser 运行
- Nginx 以 root 用户运行(解决 80 端口绑定权限问题)
- 后端应用以 appuser 用户运行(保持安全性)
- 移除 setcap 相关配置(不再需要)
- 更新目录权限设置(Nginx 相关目录使用 root,应用目录使用 appuser)
2025-12-03 05:34:26 +08:00
WrBug 5451dd87e5 fix: 修复 Nginx 绑定 80 端口的权限问题
- 使用 setcap 允许非 root 用户绑定特权端口
  - 安装 libcap2-bin 包
  - 设置 cap_net_bind_service 权限给 nginx 二进制文件
- 修复 Nginx PID 文件路径
  - 从 /tmp/nginx.pid 改为 /var/run/nginx.pid
  - 创建 /var/run 目录并设置权限
- 解决 'bind() to 0.0.0.0:80 failed (13: Permission denied)' 错误
2025-12-03 05:25:14 +08:00
WrBug 65a8e71b8d fix: 修复 Dockerfile 中用户创建顺序问题
- 先创建 appuser 用户,再执行 chown 命令
- 修复 'chown: invalid user' 错误
2025-12-03 03:39:13 +08:00
WrBug c1003fcb12 fix: 修复 Docker 镜像问题,使用 eclipse-temurin 替代已废弃的 openjdk
- 将 openjdk:17-jre-slim 替换为 eclipse-temurin:17-jre-jammy
- 修复根目录 Dockerfile(一体化部署)
- 修复 backend/Dockerfile(后端单独部署)
2025-12-03 03:15:52 +08:00
WrBug 1216fc5ed5 feat: 添加前后端一体化 Docker 部署支持
- 创建根目录 Dockerfile,支持前后端一起部署到一个容器
- 添加 Nginx 配置,自动代理后端 API 和 WebSocket
- 创建启动脚本,同时启动后端和 Nginx
- 更新 docker-compose.yml 支持一体化部署
- 创建一体化部署脚本 deploy.sh
- 修复前端环境变量支持,默认使用相对路径
- 优化部署脚本:.env 文件不存在时创建后终止部署
- 更新部署文档,添加一体化部署说明
2025-12-03 03:08:53 +08:00