From 5ffc5ede6828b0a44dffe5d054992f463c2906e6 Mon Sep 17 00:00:00 2001 From: root Date: Sun, 13 Jul 2025 11:09:01 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=20huahuo.yml?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- huahuo.yml | 96 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 96 insertions(+) create mode 100644 huahuo.yml diff --git a/huahuo.yml b/huahuo.yml new file mode 100644 index 0000000..ed92bb6 --- /dev/null +++ b/huahuo.yml @@ -0,0 +1,96 @@ +services: + firemail: + build: + context: . + dockerfile: Dockerfile + image: luofengyuan/firemailplus:latest + container_name: firemail-app + ports: + - "10000:3000" # 修改为10000端口 + volumes: + - firemail_data:/app/data + - firemail_logs:/app/logs + environment: + # 后端配置 + - HOST=0.0.0.0 + - PORT=8080 + - ENV=production + - GIN_MODE=release + + # 管理员账户配置(必须修改) + - ADMIN_USERNAME=admin + - ADMIN_PASSWORD=Y4LjE9przKHA7QtGT-RTqLKGiyTdLfAsmBwi # 修改为强密码 + + # JWT配置(必须修改) + - JWT_SECRET=MyVerySecureJWTSecretKey2024!@#$%^&*()_+ # 修改为复杂密钥 + - JWT_EXPIRY=24h + + # 数据库配置 + - DB_PATH=/app/data/firemail.db + - DATABASE_URL=/app/data/firemail.db + - DB_BACKUP_DIR=/app/data/backups + - DB_BACKUP_MAX_COUNT=7 + - DB_BACKUP_INTERVAL_HOURS=24 + + # 邮件同步配置 + - ENABLE_REAL_EMAIL_SYNC=true + - MOCK_EMAIL_PROVIDERS=false + + # 性能配置 + - MAX_CONCURRENCY=10 + - REQUEST_TIMEOUT=30s + + # 功能开关 + - ENABLE_ENHANCED_DEDUP=true + - ENABLE_SSE=true + - ENABLE_METRICS=true + + # OAuth配置(可选) + - GMAIL_CLIENT_ID= + - GMAIL_CLIENT_SECRET= + - OUTLOOK_CLIENT_ID= + - OUTLOOK_CLIENT_SECRET= + - EXTERNAL_OAUTH_SERVER_URL=https://oauth.windyl.de + - EXTERNAL_OAUTH_SERVER_ENABLED=true + + # CORS配置 + - CORS_ORIGINS=http://localhost:10000 # 修改为10000端口 + + # 日志配置 + - LOG_LEVEL=info + - LOG_FORMAT=json + + # SSE配置 + - SSE_MAX_CONNECTIONS_PER_USER=5 + - SSE_CONNECTION_TIMEOUT=30m + - SSE_HEARTBEAT_INTERVAL=30s + - SSE_CLEANUP_INTERVAL=5m + - SSE_BUFFER_SIZE=1024 + - SSE_ENABLE_HEARTBEAT=true + + # 前端配置 + - NODE_ENV=production + - NEXT_PUBLIC_API_BASE_URL=/api/v1 + + restart: unless-stopped + + healthcheck: + test: ["CMD", "wget", "--quiet", "--tries=1", "--spider", "http://localhost:3000/api/v1/health"] + interval: 30s + timeout: 10s + retries: 3 + start_period: 40s + + labels: + - "com.firemail.description=FireMail Email Client" + - "com.firemail.version=1.0.0" + +volumes: + firemail_data: + driver: local + firemail_logs: + driver: local + +networks: + default: + name: firemail_network