3-5-1、Hermes生成的部署手册
YAML
# WEB文件管理系统 - 生产环境部署文档
## 环境信息
- 前端框架:Vue 3 + Vite
- 后端框架:Spring Boot 3 + JDK 21
- 项目路径:`/home/agentuser/.hermes/profiles/flash/home/web-file-manager`
- 访问地址:http://x.x.x.x:5273
---
## 部署步骤
### Step 1 - 安装 Nginx
```bash
sudo apt update && sudo apt install nginx -y验证安装:
bash
nginx -v
sudo systemctl status nginxStep 2 - 构建前端静态文件
bash
cd /home/agentuser/.hermes/profiles/flash/home/web-file-manager/frontend
npm run build构建产物在 dist/ 目录。
Step 3 - 配置 Nginx 反向代理
3.1 拷贝静态文件到 www 目录(解决权限问题)
bash
sudo mkdir -p /var/www/web-file-manager
sudo cp -r /home/agentuser/.hermes/profiles/flash/home/web-file-manager/frontend/dist/* /var/www/web-file-manager/
sudo chown -R www-data:www-data /var/www/web-file-manager3.2 创建 Nginx 配置文件
bash
sudo tee /etc/nginx/sites-available/web-file-manager > /dev/null << 'EOF'
server {
listen 80;
listen [::]:80;
server_name _;
root /var/www/web-file-manager;
index index.html;
# Gzip 压缩
gzip on;
gzip_types text/plain text/css application/json application/javascript text/xml application/xml;
gzip_min_length 1000;
# 静态文件
location / {
try_files $uri $uri/ /index.html;
}
# Assets 静态资源(长期缓存)
location /assets/ {
expires 1y;
add_header Cache-Control "public, immutable";
}
# API 反向代理到后端
location /api/ {
proxy_pass http://127.0.0.1:8080/api/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
# 文件上传大小限制
client_max_body_size 500M;
}
EOF3.3 启用站点并重启 Nginx
bash
sudo rm /etc/nginx/sites-enabled/default
sudo ln -s /etc/nginx/sites-available/web-file-manager /etc/nginx/sites-enabled/
sudo nginx -t
sudo nginx -s reloadStep 4 - 启动后端服务并配置 systemd 开机自启
4.1 打包后端 JAR
bash
cd /home/agentuser/.hermes/profiles/flash/home/web-file-manager/backend
mvn package -DskipTests4.2 创建 systemd 服务文件
bash
sudo tee /etc/systemd/system/web-file-manager.service > /dev/null << 'EOF'
[Unit]
Description=WEB File Manager Backend
After=network.target
[Service]
Type=simple
User=agentuser
WorkingDirectory=/home/agentuser/.hermes/profiles/flash/home/web-file-manager/backend
ExecStart=/usr/bin/java -Xms256m -Xmx512m -jar /home/agentuser/.hermes/profiles/flash/home/web-file-manager/backend/target/web-file-manager-1.0.0.jar
Restart=always
RestartSec=10
[Install]
WantedBy=multi-user.target
EOF4.3 启动服务并设置开机自启
bash
sudo systemctl daemon-reload
sudo systemctl enable web-file-manager
sudo systemctl start web-file-manager常用管理命令
bash
# 查看服务状态
sudo systemctl status web-file-manager
# 重启服务
sudo systemctl restart web-file-manager
# 停止服务
sudo systemctl stop web-file-manager
# 查看 Nginx 状态
sudo systemctl status nginx
# 重载 Nginx 配置
sudo nginx -s reload
# 查看 Nginx 错误日志
sudo tail -20 /var/log/nginx/error.log
# 查看后端日志
sudo journalctl -u web-file-manager -f重新部署流程
bash
# 1. 更新前端代码后重新构建
cd /home/agentuser/.hermes/profiles/flash/home/web-file-manager/frontend
npm run build
sudo cp -r dist/* /var/www/web-file-manager/
# 2. 更新后端代码后重新打包
cd /home/agentuser/.hermes/profiles/flash/home/web-file-manager/backend
mvn package -DskipTests
sudo systemctl restart web-file-manager注意事项
- 权限问题:Nginx 以 www-data 用户运行,静态文件不要放在 ~/ 目录下,务必放到 /var/www/
- 安全组:云服务器需开放 80 端口(腾讯云 CVM → 安全组 → 入站规则)
- HTTPS:生产环境建议配置 SSL 证书(Let's Encrypt 免费)
- 账号密码:默认 admin/
<your-password>,正式部署前请修改默认密码