rwadurian/backend/services/docker-compose.2.0-snapshot...

67 lines
2.1 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 数据快照备份服务 (2.0 算力挖矿系统 - standalone 模式)
# 使用方式: docker compose -f docker-compose.2.0.yml -f docker-compose.2.0-snapshot.yml --profile standalone up snapshot-service-2
#
# 纯新增 overlay不修改任何现有服务配置
services:
# 为 mining-admin-web 补充 snapshot-service 代理地址
mining-admin-web:
environment:
- SNAPSHOT_SERVICE_URL=http://snapshot-service-2:3199
snapshot-service-2:
build:
context: ./snapshot-service
dockerfile: Dockerfile
container_name: rwa-snapshot-service-2
ports:
- "3199:3199"
environment:
- NODE_ENV=production
- APP_PORT=3199
- DATABASE_URL=file:./data/snapshot.db
# PostgreSQL-2 (备份目标)
- PG_HOST=postgres-2
- PG_PORT=5432
- PG_USER=${POSTGRES_USER:-rwa_user}
- PG_PASSWORD=${POSTGRES_PASSWORD}
# Redis-2 (备份目标)
- REDIS_HOST=redis-2
- REDIS_PORT=6379
- REDIS_PASSWORD=${REDIS_PASSWORD:-}
# MinIO (存储后端)
- MINIO_ENDPOINT=${MINIO_ENDPOINT:-192.168.1.100}
- MINIO_PORT=${MINIO_PORT:-9000}
- MINIO_USE_SSL=${MINIO_USE_SSL:-false}
- MINIO_ACCESS_KEY=${MINIO_ACCESS_KEY}
- MINIO_SECRET_KEY=${MINIO_SECRET_KEY}
- MINIO_BACKUP_BUCKET=snapshots-2
# 备份配置
- SNAPSHOT_TEMP_DIR=/tmp/snapshots
- SNAPSHOT_RETENTION_HOURS=72
- AVAILABLE_TARGETS=POSTGRES,REDIS,UPLOADS
volumes:
- snapshot_2_data:/app/data
- /tmp/rwa-snapshots-2:/tmp/snapshots
- redis_2_data:/backup-source/redis:ro
- mining-admin-uploads:/backup-source/uploads/mining-admin:ro
- trading-uploads:/backup-source/uploads/trading:ro
profiles:
- standalone
depends_on:
postgres-2:
condition: service_healthy
redis-2:
condition: service_healthy
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:3199/api/v1/health"]
interval: 30s
timeout: 3s
retries: 3
start_period: 30s
networks:
- rwa-2-network
volumes:
snapshot_2_data: