diff --git a/Dockerfile b/Dockerfile index 15298ec..636b0e7 100644 --- a/Dockerfile +++ b/Dockerfile @@ -27,35 +27,30 @@ WORKDIR /app # Copia dependências instaladas do estágio builder COPY --from=builder /install /usr/local -# Copia o restante do código +# Copia o restante do código da aplicação COPY . . -# Adiciona um usuário não-root para segurança -RUN addgroup --system app && adduser --system --ingroup app appuser -USER appuser - # Define timezone e ambiente ENV TZ=America/Sao_Paulo \ PYTHONUNBUFFERED=1 \ PYTHONDONTWRITEBYTECODE=1 \ UVICORN_WORKERS=4 \ UVICORN_PORT=8000 \ - UVICORN_HOST=0.0.0.0 + UVICORN_HOST=0.0.0.0 \ + GUNICORN_CMD_ARGS="--log-level info --timeout 60 --graceful-timeout 30 --keep-alive 10" -# Expõe a porta de aplicação +# Expõe a porta padrão do app EXPOSE 8000 # ============================== -# Comando de inicialização (Gunicorn + Uvicorn Workers) +# Comando de inicialização +# (Gunicorn + Uvicorn Workers) # ============================== CMD ["sh", "-c", "\ gunicorn main:app \ --worker-class uvicorn.workers.UvicornWorker \ --workers ${UVICORN_WORKERS:-4} \ --bind ${UVICORN_HOST:-0.0.0.0}:${UVICORN_PORT:-8000} \ - --timeout 60 \ - --keep-alive 10 \ --access-logfile '-' \ --error-logfile '-' \ - --graceful-timeout 30 \ "]