
* makes install available for all users in docker image moves the installation path from /root/.local to a virtualenv. this way we still get the lightweight multistage build without excluding non-root users. * adds changelog entry for docker-image fix A changelog entry has been added under the Integration subheader * changes dockerfile to use the venv activate script we are now using the inbuilt venv activate script, as well as explicitly mentioning the binary location in the entrypoint cmd. Co-authored-by: Nicolò <nicolo.intrieri@spinforward.it> Co-authored-by: Cooper Lees <me@cooperlees.com>
20 lines
587 B
Docker
20 lines
587 B
Docker
FROM python:3-slim AS builder
|
|
|
|
RUN mkdir /src
|
|
COPY . /src/
|
|
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]
|
|
|
|
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 ["/opt/venv/bin/black"]
|