cidadao.ai-models / Dockerfile
neural-thinker's picture
feat: initial cidadao.ai-models deployment
b95e73a
# Dockerfile for HuggingFace Spaces - Cidadão.AI Models
FROM python:3.11-slim
# Set environment variables
ENV PYTHONUNBUFFERED=1
ENV PYTHONDONTWRITEBYTECODE=1
ENV PORT=8001
# Install system dependencies
RUN apt-get update && apt-get install -y \
curl \
git \
&& rm -rf /var/lib/apt/lists/*
# Create app user for security
RUN useradd --create-home --shell /bin/bash app
# Set work directory
WORKDIR /app
# Copy requirements and install Python dependencies
COPY requirements-hf.txt ./
RUN pip install --no-cache-dir --upgrade pip && \
pip install --no-cache-dir -r requirements-hf.txt
# Copy application code
COPY src/ ./src/
COPY app.py ./
# Create necessary directories and set permissions
RUN mkdir -p logs models data && \
chown -R app:app /app
# Switch to app user
USER app
# Expose port for HuggingFace Spaces
EXPOSE 8001
# Health check
HEALTHCHECK --interval=30s --timeout=10s --start-period=5s --retries=3 \
CMD curl -f http://localhost:8001/health || exit 1
# Run application
CMD ["python", "app.py"]