# ==============================================================================
# DOCKERFILE - PORTAL DUOBI (DUOTALK CRM INTELLIGENCE)
# Imagem otimizada de produção com Python 3.11-slim e Gunicorn WSGI Server
# URL Final: https://duobi.alphard.ia.br
# ==============================================================================

FROM python:3.11-slim

# Evitar gravação de arquivos .pyc e garantir output direto dos logs no stdout
ENV PYTHONDONTWRITEBYTECODE=1
ENV PYTHONUNBUFFERED=1

# Definir diretório de trabalho no container
WORKDIR /app

# Instalar dependências de sistema necessárias
RUN apt-get update && apt-get install -y --no-install-recommends \
    curl \
    && rm -rf /var/lib/apt/lists/*

# Copiar apenas requirements.txt para aproveitar o cache do Docker layer
COPY requirements.txt .

# Instalar dependências Python
RUN pip install --no-cache-dir -r requirements.txt

# Copiar todo o código-fonte da aplicação para o container
COPY . .

# Expor a porta da aplicação Flask/Gunicorn
EXPOSE 5000

# Comando de inicialização em produção com Gunicorn (3 workers em paralelo na porta 5000)
CMD ["gunicorn", "--bind", "0.0.0.0:5000", "--workers", "3", "server:app"]
