部署运维
当你准备把服务部署到测试/生产环境,并希望“可验证、可回滚、可运维”时,从这里开始。
本文聚焦 youlai-axum 的部署最短路径,你将完成:
- 启动依赖服务(PostgreSQL / Redis)
- 构建二进制或 Docker 方式部署
- 配置 Nginx 反向代理与 HTTPS
- 完成上线前 Checklist
依赖服务
| 服务 | 是否必需 | 说明 |
|---|---|---|
| PostgreSQL | 必需 | 业务数据存储 |
| Redis | 必需 | 缓存、登录状态、验证码等 |
二进制部署
bash
cargo build --release
./target/release/youlai-axum常用验证:
- 文档:
http://localhost:8000/swagger-ui
Docker 部署
bash
docker compose -f docker/docker-compose.yml -p youlai-axum up -d停止并清理:
bash
docker compose -f docker/docker-compose.yml -p youlai-axum down反向代理(Nginx)
示例(按实际域名与证书路径调整):
nginx
server {
listen 80;
server_name api.example.com;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name api.example.com;
ssl_certificate /etc/nginx/ssl/fullchain.pem;
ssl_certificate_key /etc/nginx/ssl/privkey.pem;
location / {
proxy_pass http://127.0.0.1:8000;
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;
}
}HTTPS 与安全建议
- 证书建议用 ACME / Let's Encrypt 并定期续期
- 生产环境对外仅暴露 80/443
- 敏感配置(DB / Redis 密码、JWT 密钥)通过环境变量注入,不提交到仓库
数据备份与恢复
PostgreSQL
备份:
bash
pg_dump -U postgres youlai_admin > youlai_admin_$(date +%F).sql恢复:
bash
psql -U postgres -d youlai_admin < youlai_admin_2026-01-01.sqlRedis
- 生产环境开启持久化(RDB / AOF)
- 数据目录纳入备份策略
监控与健康检查
- 存活检查:服务进程是否存活
- 接口可用性:关键接口是否 200(如
/swagger-ui) - 依赖检查:PostgreSQL / Redis 是否可用
上线 Checklist
- [ ]
.env已配置并校验(DB / Redis / JWT) - [ ] 数据库已初始化并执行必要的变更脚本
- [ ] PostgreSQL / Redis 已部署并开启持久化
- [ ] Nginx 反向代理与 HTTPS 证书已生效
- [ ] 日志滚动与日志采集策略已确认
- [ ] 备份策略已验证
下一步
- 快速开始 - 启动验证与联调
