-
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Dockerfile
36 lines (25 loc) · 993 Bytes
/
Dockerfile
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
26
27
28
29
30
31
32
33
34
35
36
FROM python:3.9-slim
ENV env=production
# Defina a variável de ambiente para não gerar bytecode compilado
ENV PYTHONDONTWRITEBYTECODE=1
# Defina a variável de ambiente para não armazenar buffer em stdout/stderr
ENV PYTHONUNBUFFERED=1
WORKDIR /app
# Instale as dependências do sistema e as ferramentas necessárias
RUN apt-get update && apt-get install -y \
build-essential \
&& apt-get clean
# Instale pip, poetry e dependências
RUN pip install --upgrade pip \
&& pip install poetry
# Copie apenas os arquivos necessários para instalar as dependências
COPY pyproject.toml poetry.lock ./
# Instale as dependências usando Poetry
RUN poetry config virtualenvs.create false \
&& poetry install --only main
# Copie o restante dos arquivos para o diretório de trabalho
COPY . .
# Exponha a porta que o FastAPI está utilizando
EXPOSE 8080
# Comando para iniciar a aplicação
CMD ["uvicorn", "src.api.run:app", "--host", "0.0.0.0", "--port", "8080", "--reload"]