X-Git-Url: https://git.madduck.net/etc/vim.git/blobdiff_plain/7bf233a9446a7611b22bc2f73f7e221886632725..c97b9c55b488a478afe171537c0e4c0f10631ca1:/Dockerfile diff --git a/Dockerfile b/Dockerfile index ce88f0c..4e8f12f 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,16 +1,19 @@ -FROM python:3-slim +FROM python:3-slim AS builder -# TODO: Remove regex version pin once we get newer arm wheels 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 regex==2021.10.8 \ - && 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] + +FROM python:3-slim + +# copy only Python packages to limit the image size +COPY --from=builder /opt/venv /opt/venv +ENV PATH="/opt/venv/bin:$PATH" -CMD ["black"] +CMD ["/opt/venv/bin/black"]