saas_api/Dockerfile
2025-12-23 11:35:32 -03:00

43 lines
No EOL
971 B
Docker

FROM python:3.12-slim
WORKDIR /app
# Instala dependências do sistema, incluindo nano e curl
RUN apt-get update && apt-get install -y \
gcc \
libffi-dev \
libssl-dev \
python3-dev \
firebird-dev \
libcurl4-openssl-dev \
nano \
curl \
&& pip install --upgrade pip \
&& apt-get clean
COPY requirements.txt .
# Instala as dependências do Python
RUN pip install --no-cache-dir -r requirements.txt
# Remove o GCC para reduzir o tamanho da imagem, mas mantém bibliotecas de runtime
RUN apt-get remove -y gcc \
&& apt-get autoremove -y \
&& rm -rf /var/lib/apt/lists/*
# Cria diretórios necessários
RUN mkdir -p storage/temp
COPY . .
EXPOSE 8000
# Usando o formato Shell para evitar erros de interpretação no Easypanel
CMD gunicorn main:app \
--workers 4 \
--worker-class uvicorn.workers.UvicornWorker \
--bind 0.0.0.0:8000 \
--timeout 120 \
--graceful-timeout 30 \
--keep-alive 5 \
--log-level info