X-Git-Url: https://git.madduck.net/etc/vim.git/blobdiff_plain/8e0803e7e5acabdd28b80258f15d8aebf11fbb4c..3bb92146f59804a6ead47d5f2d0fdc47daa6b698:/Dockerfile?ds=sidebyside diff --git a/Dockerfile b/Dockerfile index 9542479..a9e0ea5 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,14 +1,19 @@ -FROM python:3-slim +FROM python:3.11-slim AS builder RUN mkdir /src COPY . /src/ -RUN pip install --no-cache-dir --upgrade pip setuptools wheel \ - && apt update && apt install -y git \ +ENV VIRTUAL_ENV=/opt/venv +RUN python -m venv $VIRTUAL_ENV +RUN . /opt/venv/bin/activate && pip install --no-cache-dir --upgrade pip setuptools wheel \ + # Install build tools to compile dependencies that don't have prebuilt wheels + && apt update && apt install -y git build-essential \ && cd /src \ - && pip install --no-cache-dir .[colorama,d] \ - && rm -rf /src \ - && apt remove -y git \ - && apt autoremove -y \ - && rm -rf /var/lib/apt/lists/* + && pip install --no-cache-dir .[colorama,d] -CMD ["black"] +FROM python:3.11-slim + +# copy only Python packages to limit the image size +COPY --from=builder /opt/venv /opt/venv +ENV PATH="/opt/venv/bin:$PATH" + +CMD ["/opt/venv/bin/black"]