iiewa commited on
Commit
f89a6a0
·
verified ·
1 Parent(s): 2cc98e1

Upload Dockerfile with huggingface_hub

Browse files
Files changed (1) hide show
  1. Dockerfile +8 -17
Dockerfile CHANGED
@@ -1,31 +1,22 @@
1
  FROM python:3.11-slim
2
 
3
  # Set environment variables
4
- ENV PYTHONPATH="/app"
5
  ENV PYTHONUNBUFFERED=1
6
 
7
- # Create non-root user for Hugging Face Spaces
8
- RUN useradd -m -u 1000 user
9
- USER user
10
- ENV HOME=/home/user \
11
- PATH=/home/user/.local/bin:$PATH
12
-
13
  WORKDIR /app
14
 
15
  # Copy requirements first for better caching
16
- COPY --chown=user:user requirements.txt .
17
- RUN pip install --no-cache-dir --user -r requirements.txt
18
 
19
  # Copy application code
20
- COPY --chown=user:user . .
21
 
22
- # Expose port (7860 for HF Spaces, can be overridden)
23
- EXPOSE 7860
24
 
25
- # Health check
26
- HEALTHCHECK --interval=30s --timeout=10s --start-period=60s --retries=3 \
27
- CMD curl -f http://localhost:7860/health || exit 1
28
 
29
  # Start the server
30
- # Use single worker to minimize memory usage
31
- CMD ["python", "-m", "gunicorn", "-b", "0.0.0.0:7860", "--workers", "1", "--threads", "2", "--timeout", "120", "server.api:app"]
 
1
  FROM python:3.11-slim
2
 
3
  # Set environment variables
 
4
  ENV PYTHONUNBUFFERED=1
5
 
 
 
 
 
 
 
6
  WORKDIR /app
7
 
8
  # Copy requirements first for better caching
9
+ COPY requirements.txt .
10
+ RUN pip install --no-cache-dir -r requirements.txt
11
 
12
  # Copy application code
13
+ COPY . .
14
 
15
+ # Set PYTHONPATH to include the app directory
16
+ ENV PYTHONPATH="/app"
17
 
18
+ # Expose port (7860 for HF Spaces)
19
+ EXPOSE 7860
 
20
 
21
  # Start the server
22
+ CMD ["gunicorn", "-b", "0.0.0.0:7860", "--workers", "1", "--threads", "2", "--timeout", "120", "server.api:app"]