Spaces:
Sleeping
Sleeping
| # Usa uma imagem oficial do Python como base | |
| FROM python:3.9 | |
| # Cria um utilizador não-root para segurança | |
| RUN useradd -m -u 1000 user | |
| USER user | |
| ENV PATH="/home/user/.local/bin:$PATH" | |
| # Define o diretório de trabalho dentro do container | |
| WORKDIR /app | |
| # Copia o ficheiro de requisitos e instala as dependências PRIMEIRO | |
| # Isto aproveita o cache do Docker e acelera builds futuras | |
| COPY --chown=user ./requirements.txt requirements.txt | |
| RUN pip install --no-cache-dir --upgrade -r requirements.txt | |
| # Copia todos os outros ficheiros do projeto (app.py, pasta templates, etc.) | |
| COPY --chown=user . /app | |
| # Expõe a porta que a aplicação vai usar | |
| EXPOSE 7860 | |
| # O comando para iniciar a aplicação EM PRODUÇÃO usando Gunicorn | |
| # Gunicorn é um servidor WSGI robusto, ideal para Flask. | |
| CMD ["gunicorn", "--workers", "4", "--bind", "0.0.0.0:7860", "app:app"] |