kube-web-view/Dockerfile

34 satır
1 KiB
Docker

FROM python:3.10
WORKDIR /
RUN pip3 install poetry
COPY poetry.lock /
COPY pyproject.toml /
# fake package to make Poetry happy (we will install the actual contents in the later stage)
RUN mkdir /kube_web && touch /kube_web/__init__.py && touch /README.md
RUN poetry config virtualenvs.create false && \
poetry install --no-interaction --only main --no-ansi
FROM python:3.10-slim
WORKDIR /
# copy pre-built packages to this image
COPY --from=0 /usr/local/lib/python3.10/site-packages /usr/local/lib/python3.10/site-packages
# now copy the actual code we will execute (poetry install above was just for dependencies)
COPY kube_web /kube_web
ARG VERSION=dev
# replace build version in package and
# add build version to static asset links to break browser cache
# see also "version" in Makefile
RUN sed -i "s/^__version__ = .*/__version__ = \"${VERSION}\"/" /kube_web/__init__.py && \
sed -i "s/v=[0-9A-Za-z._-]*/v=${VERSION}/g" /kube_web/templates/base.html
ENTRYPOINT ["/usr/local/bin/python", "-m", "kube_web"]