docboard-api / Dockerfile
yCamelow's picture
Upload dockerfile and requirements.txt
ff99c23 verified
Raw
History Blame Contribute Delete
1.05 kB
# Hugging Face Spaces — FastAPI DocBoard
# Requisitos obrigatórios do HF: porta 7860 + usuário UID 1000
FROM python:3.11-slim
# Criar usuário com UID 1000 (exigido pelo HF Spaces)
RUN useradd -m -u 1000 appuser
# Instalar dependências do sistema
RUN apt-get update && apt-get install -y \
libpq-dev gcc curl \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /app
# Instalar dependências Python como root (mais rápido no build)
COPY --chown=appuser requirements.txt .
RUN pip install --no-cache-dir --upgrade -r requirements.txt
# Copiar código da aplicação e script de inicialização
COPY --chown=appuser . /app
# Corrigir finais de linha do Windows (CRLF para LF) e dar permissão
USER root
RUN sed -i 's/\r$//' /app/start.sh && chmod +x /app/start.sh
# Trocar para o usuário não-root
USER appuser
ENV HOME=/home/appuser PATH=/home/appuser/.local/bin:$PATH
# Porta obrigatória do HF Spaces
EXPOSE 7860
# Comando para rodar a aplicação (migrações + Gunicorn) via script
CMD ["./start.sh"]