ruhivig85 commited on
Commit
5d4d610
Β·
verified Β·
1 Parent(s): 76336ba

Upload Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +7 -18
Dockerfile CHANGED
@@ -1,38 +1,27 @@
1
- # ════════════════════════════════════════════════
2
- # Chat Arena β€” Dockerfile
3
- # Multi-AI Model Chat Application
4
- # ════════════════════════════════════════════════
5
 
6
- FROM python:3.11-slim AS base
7
-
8
- # System deps
9
  RUN apt-get update && apt-get install -y --no-install-recommends \
10
- curl \
11
  && rm -rf /var/lib/apt/lists/*
12
 
13
  WORKDIR /app
14
 
15
- # Install Python dependencies
16
  COPY backend/requirements.txt ./backend/requirements.txt
17
  RUN pip install --no-cache-dir -r backend/requirements.txt
18
 
19
- # Copy source
20
  COPY backend/ ./backend/
21
  COPY frontend/ ./frontend/
22
 
23
- # Create data directory for SQLite
24
  RUN mkdir -p /app/data
25
 
26
- # Environment
27
  ENV PYTHONPATH=/app
28
  ENV DATABASE_URL=sqlite:////app/data/chat_arena.db
29
  ENV DEBUG=false
30
 
31
- EXPOSE 8000
32
 
33
- # Health check
34
- HEALTHCHECK --interval=30s --timeout=10s --start-period=5s --retries=3 \
35
- CMD curl -f http://localhost:8000/api/health || exit 1
36
 
37
- # Run
38
- CMD ["uvicorn", "backend.main:app", "--host", "0.0.0.0", "--port", "8000", "--workers", "2"]
 
1
+ FROM python:3.11-slim
 
 
 
2
 
 
 
 
3
  RUN apt-get update && apt-get install -y --no-install-recommends \
4
+ curl libpq-dev gcc \
5
  && rm -rf /var/lib/apt/lists/*
6
 
7
  WORKDIR /app
8
 
 
9
  COPY backend/requirements.txt ./backend/requirements.txt
10
  RUN pip install --no-cache-dir -r backend/requirements.txt
11
 
 
12
  COPY backend/ ./backend/
13
  COPY frontend/ ./frontend/
14
 
 
15
  RUN mkdir -p /app/data
16
 
 
17
  ENV PYTHONPATH=/app
18
  ENV DATABASE_URL=sqlite:////app/data/chat_arena.db
19
  ENV DEBUG=false
20
 
21
+ EXPOSE 7860
22
 
23
+ HEALTHCHECK --interval=30s --timeout=10s --start-period=10s --retries=3 \
24
+ CMD curl -f http://localhost:7860/api/health || exit 1
 
25
 
26
+ # Single worker β€” avoids PostgreSQL race condition on startup
27
+ CMD ["uvicorn", "backend.main:app", "--host", "0.0.0.0", "--port", "7860", "--workers", "1"]