2023-05-05 15:30:05 +01:00
|
|
|
FROM python:3.11-slim-buster as prod
|
2023-05-12 00:43:24 -07:00
|
|
|
|
2023-05-05 15:30:05 +01:00
|
|
|
RUN apt-get update && apt-get install -y \
|
|
|
|
|
default-libmysqlclient-dev \
|
|
|
|
|
gcc \
|
2023-06-27 17:45:13 +01:00
|
|
|
pkg-config \
|
2023-07-28 12:06:38 -07:00
|
|
|
openjdk-11-jdk \
|
2023-09-10 16:51:34 -07:00
|
|
|
build-essential \
|
2023-05-05 15:30:05 +01:00
|
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
|
|
|
|
|
|
RUN pip install poetry==1.4.2
|
|
|
|
|
|
|
|
|
|
# Configuring poetry
|
|
|
|
|
RUN poetry config virtualenvs.create false
|
|
|
|
|
|
|
|
|
|
# Copying requirements of a project
|
2023-06-21 18:55:25 -07:00
|
|
|
COPY pyproject.toml /app/src/
|
2023-05-05 15:30:05 +01:00
|
|
|
WORKDIR /app/src
|
|
|
|
|
|
|
|
|
|
# Installing requirements
|
|
|
|
|
RUN poetry install --only main
|
|
|
|
|
# Removing gcc
|
|
|
|
|
RUN apt-get purge -y \
|
2023-09-10 16:51:34 -07:00
|
|
|
g++ \
|
2023-05-05 15:30:05 +01:00
|
|
|
gcc \
|
2023-06-26 04:21:42 +08:00
|
|
|
pkg-config \
|
2023-05-05 15:30:05 +01:00
|
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
|
|
2023-05-12 00:43:24 -07:00
|
|
|
# Copying actual application
|
2023-05-05 15:30:05 +01:00
|
|
|
COPY . /app/src/
|
2023-06-21 21:03:43 -07:00
|
|
|
RUN poetry install --only main
|
2023-05-12 00:43:24 -07:00
|
|
|
|
2023-05-05 15:30:05 +01:00
|
|
|
CMD ["/usr/local/bin/python", "-m", "reworkd_platform"]
|
|
|
|
|
|
|
|
|
|
FROM prod as dev
|
|
|
|
|
|
|
|
|
|
RUN poetry install
|