File size: 858 Bytes
afa1ad7
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# 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"]