Improved Docker image size

Improved Docker image size by using python's alpine image and installing the required dependencies seperately. 
This reduces the size of the image from 1.46 GB to 0.982 GB
This commit is contained in:
Job 2021-10-13 01:45:48 +02:00 committed by GitHub
parent 572f25ff75
commit 961daa91f3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 7 additions and 6 deletions

View File

@ -5,19 +5,20 @@ COPY ./static/package*.json /code/static/
RUN cd /code/static && npm install
# Main image
FROM python:3.7
FROM python:3.7-alpine
# install poetry, "pip3 install poetry==1.1.5" doesn't work
# poetry will be available at /root/.poetry/bin/poetry
RUN curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | python -
# install poetry
RUN apk update \
&& apk add --no-cache build-base openssl-dev libffi-dev \
&& pip3 install poetry
WORKDIR /code
# install dependencies
COPY poetry.lock pyproject.toml ./
RUN /root/.poetry/bin/poetry config virtualenvs.create false \
&& /root/.poetry/bin/poetry install --no-root
RUN poetry config virtualenvs.create false \
&& poetry install --no-root
# copy npm packages
COPY --from=npm /code /code