Files
happy-life-star/backend-single/部署说明.md
T
2025-07-25 16:18:33 +08:00

4.0 KiB

情绪博物馆后端服务部署说明

文件说明

  • deploy.sh - 本地打包脚本
  • deploy-server.sh - 服务器部署脚本
  • /data/programs/emotion-museum/emotion-simple-0.0.1-SNAPSHOT.jar - 打包后的 JAR 文件

部署步骤

1. 本地打包

# 在 backend-single 目录下执行
./deploy.sh

2. 上传到服务器

将以下文件上传到服务器:

  • /data/programs/emotion-museum/emotion-simple-0.0.1-SNAPSHOT.jar
  • deploy-server.sh

3. 服务器部署

# 给脚本添加执行权限
chmod +x deploy-server.sh

# 部署服务(默认操作)
./deploy-server.sh

# 或者指定操作
./deploy-server.sh deploy

脚本功能

主要功能

  • 自动停止旧服务 - 安全停止正在运行的服务
  • 启动新服务 - 使用生产环境配置启动服务
  • 日志管理 - 日志保存到 /data/logs/emotion-museum/single
  • 状态监控 - 检查服务启动状态和端口监听
  • 进程管理 - 使用 PID 文件管理进程

命令行参数

./deploy-server.sh [命令]

可用命令:
  deploy  - 部署服务(默认)
  start   - 启动服务
  stop    - 停止服务
  restart - 重启服务
  status  - 查看服务状态
  logs    - 查看实时日志

配置说明

环境变量

脚本中的主要配置:

APP_NAME="emotion-museum-single"                    # 应用名称
JAR_NAME="emotion-simple-0.0.1-SNAPSHOT.jar"       # JAR 文件名
LOG_DIR="/data/logs/emotion-museum/single"         # 日志目录
JAVA_OPTS="-Xms512m -Xmx1024m -XX:+UseG1GC..."     # JVM 参数

日志文件

  • application.log - 应用运行日志
  • startup.log - 启动日志
  • heapdump.hprof - 内存溢出时的堆转储文件

生产环境配置

服务启动时使用以下配置:

  • spring.profiles.active=prod - 激活生产环境配置
  • logging.file.path=/data/logs/emotion-museum/single - 日志路径
  • logging.file.name=/data/logs/emotion-museum/single/application.log - 日志文件名

使用示例

首次部署

# 1. 上传文件到服务器
scp /data/programs/emotion-museum/emotion-simple-0.0.1-SNAPSHOT.jar user@server:/path/to/app/
scp deploy-server.sh user@server:/path/to/app/

# 2. 登录服务器
ssh user@server

# 3. 进入应用目录
cd /path/to/app

# 4. 添加执行权限
chmod +x deploy-server.sh

# 5. 部署服务
./deploy-server.sh

日常维护

# 查看服务状态
./deploy-server.sh status

# 查看实时日志
./deploy-server.sh logs

# 重启服务
./deploy-server.sh restart

# 停止服务
./deploy-server.sh stop

注意事项

1. 权限要求

  • 确保脚本有执行权限
  • 确保有权限创建 /data/logs/emotion-museum/single 目录
  • 确保有权限写入日志文件

2. 端口配置

  • 脚本默认检查 8080 端口
  • 如果使用其他端口,请修改脚本中的端口检查逻辑

3. Java 环境

  • 确保服务器已安装 Java 8 或更高版本
  • 确保 java 命令在 PATH 中可用

4. 内存配置

  • 默认配置:最小 512MB,最大 1024MB
  • 根据服务器配置调整 JAVA_OPTS 中的内存参数

5. 日志轮转

建议配置日志轮转,避免日志文件过大:

# 在 /etc/logrotate.d/ 下创建配置文件
/data/logs/emotion-museum/single/*.log {
    daily
    rotate 30
    compress
    delaycompress
    missingok
    notifempty
    create 644 root root
}

故障排查

1. 服务启动失败

# 查看启动日志
tail -f /data/logs/emotion-museum/single/startup.log

# 查看应用日志
tail -f /data/logs/emotion-museum/single/application.log

2. 端口被占用

# 查看端口占用情况
netstat -tlnp | grep :8080

# 杀死占用端口的进程
kill -9 <PID>

3. 内存不足

# 查看内存使用情况
free -h

# 调整 JAVA_OPTS 中的内存参数

4. 权限问题

# 检查目录权限
ls -la /data/logs/emotion-museum/single/

# 修改权限
chmod 755 /data/logs/emotion-museum/single/
chown -R user:group /data/logs/emotion-museum/single/