Spaces:
Running
Running
| # Utiliza a imagem oficial do Python 3.11 reduzida | |
| FROM python:3.11-slim | |
| # Variáveis de ambiente para otimização do Python e do Hugging Face Hub | |
| ENV PYTHONUNBUFFERED=1 \ | |
| PYTHONDONTWRITEBYTECODE=1 \ | |
| HF_HOME=/home/user/.cache/huggingface | |
| # Criação de usuário não-root obrigatório para o Hugging Face Spaces (UID 1000) | |
| RUN useradd -m -u 1000 user | |
| # Define o diretório de trabalho com permissões para o usuário | |
| USER user | |
| ENV HOME=/home/user \ | |
| PATH=/home/user/.local/bin:$PATH | |
| WORKDIR $HOME/app | |
| # Cópia das dependências | |
| COPY --chown=user requirements.txt . | |
| # Instalação das dependências e da biblioteca de CPU do PyTorch para reduzir o tamanho da imagem | |
| RUN pip install --no-cache-dir -r requirements.txt --extra-index-url https://download.pytorch.org/whl/cpu | |
| # Cópia do código-fonte do servidor | |
| COPY --chown=user app/ app/ | |
| # O Hugging Face Spaces encaminha o tráfego exclusivamente para a porta 7860 | |
| EXPOSE 7860 | |
| # Comando de inicialização do servidor ASGI na porta exigida | |
| CMD ["uvicorn", "app.main:app", "--host", "0.0.0.0", "--port", "7860"] |