2025-04-04 17:55:58 -03:00
|
|
|
FROM alpine:latest
|
2025-04-04 15:21:39 -03:00
|
|
|
|
|
|
|
|
# Instalar dependências do sistema
|
2025-04-04 17:55:58 -03:00
|
|
|
RUN apk update && \
|
|
|
|
|
apk add --no-cache \
|
|
|
|
|
python3 \
|
|
|
|
|
py3-pip \
|
|
|
|
|
make \
|
|
|
|
|
git \
|
|
|
|
|
gcc \
|
|
|
|
|
python3-dev \
|
|
|
|
|
musl-dev \
|
|
|
|
|
linux-headers
|
|
|
|
|
|
|
|
|
|
# Criar link simbólico para python3
|
|
|
|
|
RUN ln -sf python3 /usr/bin/python
|
|
|
|
|
|
|
|
|
|
# Definir diretório de trabalho
|
|
|
|
|
WORKDIR /app
|
|
|
|
|
|
|
|
|
|
# Copiar arquivos do projeto
|
|
|
|
|
COPY . .
|
2025-04-04 15:21:39 -03:00
|
|
|
|
2025-04-04 18:04:23 -03:00
|
|
|
# Criar e ativar ambiente virtual
|
|
|
|
|
RUN python -m venv /venv && \
|
|
|
|
|
. /venv/bin/activate && \
|
|
|
|
|
pip install --upgrade pip && \
|
|
|
|
|
pip install -r requirements.txt
|
2025-04-04 15:21:39 -03:00
|
|
|
|
2025-04-04 17:55:58 -03:00
|
|
|
# Expor a porta que o Flask usa
|
2025-04-04 15:21:39 -03:00
|
|
|
EXPOSE 5000
|
|
|
|
|
|
2025-04-04 18:04:23 -03:00
|
|
|
# Definir o ambiente virtual como padrão
|
|
|
|
|
ENV PATH="/venv/bin:$PATH"
|
2025-04-04 18:07:04 -03:00
|
|
|
ENV FLASK_APP=app.py
|
|
|
|
|
ENV FLASK_ENV=production
|
2025-04-04 18:04:23 -03:00
|
|
|
|
2025-04-04 15:21:39 -03:00
|
|
|
# Comando para rodar a aplicação
|
2025-04-04 18:07:04 -03:00
|
|
|
CMD ["gunicorn", "--bind", "0.0.0.0:5000", "app:app"]
|