feat: 添加 miniapp-api_test 测试环境自动化部署配置

- 新增 docker-compose.test.yml 测试环境配置
  - API 端口: 3001
  - MongoDB 端口: 27019
  - 独立数据卷隔离
  - SERVER_URL: https://miniapp-api-test.dxz99wyr.cn
- 新增 deploy/webhook-server.js Webhook 自动部署服务
- 新增 deploy/webhook.service systemd 服务配置
- 新增 deploy/setup.sh 一键初始化脚本
- Webhook Secret 与正式版保持一致: miniapp-api-deploy-secret
This commit is contained in:
Developer
2026-05-18 20:42:40 +08:00
parent e2dae5942d
commit e73149f91d
5 changed files with 351 additions and 0 deletions
+56
View File
@@ -0,0 +1,56 @@
services:
app-test:
build:
context: .
dockerfile: Dockerfile
container_name: miniapp-api_test
restart: unless-stopped
ports:
- "3001:3001"
environment:
- PORT=3001
- NODE_ENV=production
- WECHAT_APPID=wxa83262674846ca1a
- WECHAT_APPSECRET=365653aa1214a5523a6a0e7d793eec6a
- MONGODB_URI=mongodb://mongo-test:27017/quanyixiaozhushou_test
- JWT_SECRET=your_jwt_secret_key_here_change_in_production
- JWT_EXPIRES_IN=7d
- LOG_LEVEL=info
- BAIDU_OCR_API_KEY=IfYLOLzL6X60h5UOdnkX6OmT
- BAIDU_OCR_SECRET_KEY=wGXbp6DwazDghJ1EXtjAT7XAFwJLqVD4
- SERVER_URL=https://miniapp-api-test.dxz99wyr.cn
- EXPORT_ENCRYPT_KEY=QuanYiXiaoZhuShou_2026_Secret_Key
- ADMIN_KEY=quanyiAdmin2026
volumes:
- uploads_data_test:/app/public/uploads
- ./public/avatars:/app/public/avatars
depends_on:
mongo-test:
condition: service_healthy
healthcheck:
test: ["CMD", "node", "-e", "require('http').get('http://localhost:3001/health', (r) => {process.exit(r.statusCode === 200 ? 0 : 1)})"]
interval: 30s
timeout: 10s
retries: 3
start_period: 30s
mongo-test:
image: mongo:7.0
container_name: miniapp-api_test-mongo
restart: unless-stopped
ports:
- "27019:27017"
volumes:
- mongo_data_test:/data/db
environment:
- MONGO_INITDB_DATABASE=quanyixiaozhushou_test
healthcheck:
test: echo 'db.runCommand("ping").ok' | mongosh --quiet
interval: 10s
timeout: 5s
retries: 5
start_period: 20s
volumes:
uploads_data_test:
mongo_data_test: