| # Usar uma imagem base leve de Python | |
| FROM python:3.10-slim | |
| # Definir variáveis de ambiente para o Python não gerar arquivos .pyc e não usar buffer para logs | |
| ENV PYTHONDONTWRITEBYTECODE=1 | |
| ENV PYTHONUNBUFFERED=1 | |
| # Definir o diretório de trabalho dentro do container | |
| WORKDIR /app | |
| # Instalar dependências do sistema necessárias para algumas bibliotecas Python | |
| RUN apt-get update && apt-get install -y --no-install-recommends \ | |
| build-essential \ | |
| && rm -rf /var/lib/apt/lists/* | |
| # Copiar o arquivo de dependências | |
| COPY requirements.txt . | |
| # Atualizar o pip e instalar as dependências do Python | |
| RUN pip install --no-cache-dir --upgrade pip && \ | |
| pip install --no-cache-dir -r requirements.txt | |
| # Copiar o restante do código do projeto | |
| COPY . . | |
| # Expor a porta que o Gradio usa por padrão | |
| EXPOSE 7860 | |
| # Definir variáveis de ambiente para o Gradio (necessário para Hugging Face Spaces) | |
| ENV GRADIO_SERVER_NAME="0.0.0.0" | |
| # Comando para rodar a aplicação | |
| CMD ["python", "app.py"] | |