# 保质期小程序部署说明 ## 1. 准备 1. 复制环境变量模板: ```bash cp .env.example .env ``` 2. 按实际环境填写 `.env`:数据库、Redis、AI、七牛、小程序 AppID、API 域名。 3. 确认域名解析到部署机: - `api.example.com -> 服务器公网 IP` ## 2. 数据库初始化 ```bash mysql -h -u -p < docs/sql/expiry.sql ``` ## 3. 一键部署(Docker Compose) ```bash docker compose -f docker-compose.prod.yml up -d --build ``` ## 4. Nginx HTTPS 配置 1. 修改 `deploy/nginx/wx_service_https.conf` 中 `server_name` 与证书路径。 2. 挂载证书目录(例如 `/etc/letsencrypt`)。 3. 重载 Nginx: ```bash docker exec wx_service_nginx nginx -s reload ``` ## 5. 验证 1. 健康检查: ```bash curl -i https://api.example.com/healthz curl -i https://api.example.com/api/expiry/healthz ``` 2. 接口联调: ```bash BASE_URL=https://api.example.com TOKEN= scripts/expiry/run_integration_tests.sh ``` ## 6. 小程序侧配置 1. `manifest.json` 配置正式 `appid`。 2. 在小程序后台添加服务器域名: - request 合法域名:`https://api.example.com` 3. 发布前执行: ```bash # 在前端仓库 expiry_uniapp 中 npm install npm run build -- wx ``` ## 7. 回滚 ```bash docker compose -f docker-compose.prod.yml down # 回滚到上一版本镜像后再 up -d ```