File size: 2,432 Bytes
43b10b4
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
services:
  maester-enterprise:
    build: .
    env_file:
      - .env
    ports:
      - "7860:7860"
    volumes:
      - maester-data:/app/data
    restart: unless-stopped
    healthcheck:
      test: ["CMD", "curl", "-fsS", "http://localhost:7860/health"]
      interval: 30s
      timeout: 10s
      retries: 3
      start_period: 60s

  n8n:
    image: docker.n8n.io/n8nio/n8n
    env_file:
      - .env
    ports:
      - "5678:5678"
    environment:
      N8N_HOST: ${N8N_HOST:-localhost}
      N8N_PORT: ${N8N_PORT:-5678}
      N8N_PROTOCOL: ${N8N_PROTOCOL:-http}
      WEBHOOK_URL: ${N8N_WEBHOOK_URL:-http://localhost:5678/}
      N8N_ENCRYPTION_KEY: ${N8N_ENCRYPTION_KEY}
      N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS: "true"
      N8N_RUNNERS_ENABLED: "true"
      N8N_DIAGNOSTICS_ENABLED: "false"
      N8N_PERSONALIZATION_ENABLED: "false"
      GENERIC_TIMEZONE: ${GENERIC_TIMEZONE:-UTC}
      TZ: ${GENERIC_TIMEZONE:-UTC}
      MAESTER_BASE_URL: http://maester-enterprise:7860
      MAESTER_API_KEY: ${MAESTER_API_KEY}
      AI_PROVIDER: ${AI_PROVIDER:-openai}
      LLM_PROVIDER: ${LLM_PROVIDER:-openai}
      LLM_MODEL: ${LLM_MODEL:-gpt-4o-mini}
      OPENAI_API_KEY: ${OPENAI_API_KEY}
      OPENAI_BASE_URL: ${OPENAI_BASE_URL:-https://api.openai.com/v1}
      OPENAI_MODEL: ${OPENAI_MODEL:-gpt-4o-mini}
      GEMINI_API_KEY: ${GEMINI_API_KEY}
      GEMINI_BASE_URL: ${GEMINI_BASE_URL:-https://generativelanguage.googleapis.com/v1beta}
      GEMINI_MODEL: ${GEMINI_MODEL:-gemini-1.5-flash}
      OPENROUTER_API_KEY: ${OPENROUTER_API_KEY}
      OPENROUTER_BASE_URL: ${OPENROUTER_BASE_URL:-https://openrouter.ai/api/v1}
      OPENROUTER_MODEL: ${OPENROUTER_MODEL:-openai/gpt-4o-mini}
      OPENROUTER_SITE_URL: ${OPENROUTER_SITE_URL:-http://localhost:5678}
      OPENROUTER_APP_NAME: "${OPENROUTER_APP_NAME:-Maester Enterprise}"
      PEXELS_API_KEY: ${PEXELS_API_KEY}
      KTTS_MODEL: ${KTTS_MODEL:-kokoro-v0_19.onnx}
      KTTS_VOICE: ${KTTS_VOICE:-af_bella.pt}
      TELEGRAM_BOT_TOKEN: ${TELEGRAM_BOT_TOKEN}
      TELEGRAM_CHAT_ID: ${TELEGRAM_CHAT_ID}
      GOOGLE_SHEETS_WEBHOOK_URL: ${GOOGLE_SHEETS_WEBHOOK_URL}
      TIKTOK_UPLOAD_ENABLED: ${TIKTOK_UPLOAD_ENABLED:-false}
      TIKTOK_ACCESS_TOKEN: ${TIKTOK_ACCESS_TOKEN}
    volumes:
      - n8n-data:/home/node/.n8n
    depends_on:
      maester-enterprise:
        condition: service_healthy
    restart: unless-stopped

volumes:
  maester-data:
  n8n-data: