File size: 2,254 Bytes
a854c6f
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
71
72
73
74
75
76
version: '3.8'

services:
  gradio-fastapi-django:
    build:
      context: .
      dockerfile: Dockerfile
    container_name: gradio-fastapi-django-main
    ports:
      - "7860:7860"
    environment:
      - PYTHONUNBUFFERED=1
      - GRADIO_SERVER_NAME=0.0.0.0
      - GRADIO_SERVER_PORT=7860
      - OPENAI_API_BASE=${OPENAI_API_BASE:-https://api.groq.com/openai/v1}
      - OPENAI_API_KEY=${OPENAI_API_KEY}
      - MODEL_NAME=${MODEL_NAME:-llama3-8b-8192}
      - LOCAL_MODEL=${LOCAL_MODEL:-true}
      - GOOGLE_APPLICATION_CREDENTIALS_CONTENT=${GOOGLE_APPLICATION_CREDENTIALS_CONTENT}
      - GOOGLE_PROJECT_ID=${GOOGLE_PROJECT_ID}
      - GOOGLE_CLIENT_EMAIL=${GOOGLE_CLIENT_EMAIL}
      - APPSHEET_APPID=${APPSHEET_APPID}
      - APPSHEET_KEY=${APPSHEET_KEY}
      - ASSSHEET_APPID=${ASSSHEET_APPID}
      - ChannelAccessToken=${ChannelAccessToken}
      - ChannelID=${ChannelID}
      - ChannelSecret=${ChannelSecret}
      - WEBHOOK_GAS=${WEBHOOK_GAS}
      - WEBHOOK_URL=${WEBHOOK_URL}
      - api_key=${api_key}
      - chat_url=${chat_url}
      - hf_token=${hf_token}
      - n8nhook=${n8nhook}
      - openinterpreter_secret=${openinterpreter_secret}
      - postgre_host=${postgre_host}
      - postgre_pass=${postgre_pass}
      - postgre_url=${postgre_url}
      - postgre_user=${postgre_user}
      - token=${token}
      - github_user=${github_user}
      - github_token=${github_token}
      - TOOL_KIT_DIR=usage
    volumes:
      - ./cache:/app/cache
      - ./gradio_cached_examples:/app/gradio_cached_examples
      - ./static:/app/static
      - ./templates:/app/templates
    restart: unless-stopped
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:7860/health"]
      interval: 30s
      timeout: 10s
      retries: 3
      start_period: 30s
    networks:
      - gradio-network

  # Optional: Add a database service if needed
  # postgres:
  #   image: postgres:15-alpine
  #   container_name: postgres-db
  #   environment:
  #     POSTGRES_DB: gradio_app
  #     POSTGRES_USER: postgres
  #     POSTGRES_PASSWORD: postgres
  #   volumes:
  #     - postgres_data:/var/lib/postgresql/data
  #   networks:
  #     - gradio-network

networks:
  gradio-network:
    driver: bridge

volumes:
  postgres_data: