Browse Source

Initial distroless versions of get-checksum and version-bump

distroless
Matt Andreko 9 months ago
parent
commit
a8953721ea
No known key found for this signature in database
  1. 2
      get-checksum/.dockerignore
  2. 24
      get-checksum/Dockerfile
  3. 2
      version-bump/.dockerignore
  4. 25
      version-bump/Dockerfile

2
get-checksum/.dockerignore

@ -0,0 +1,2 @@
*
!main.py

24
get-checksum/Dockerfile

@ -1,12 +1,22 @@
FROM python:3-slim FROM debian:12-slim AS build
RUN apt-get update && \
apt-get install --no-install-suggests -y --no-install-recommends python3-venv gcc libpython3-dev && \
python3 -m venv /venv && \
/venv/bin/pip install --upgrade pip setuptools wheel
ADD . /app
WORKDIR /app FROM build AS build-venv
RUN /venv/bin/pip install --disable-pip-version-check --no-cache-dir lxml
RUN /venv/bin/pip install --disable-pip-version-check --no-cache-dir pyyaml
FROM gcr.io/distroless/python3-debian12:nonroot AS final
RUN pip3 install lxml --target=/app USER nonroot
RUN pip3 install pyyaml --target=/app
ENV PYTHONPATH /app COPY --from=build-venv /venv /venv
# Must chown files since non-root user doesn't have access to /app to write output file
COPY --chown=nonroot:nonroot . /app
WORKDIR /app
ENTRYPOINT [ "python", "/app/main.py" ] ENTRYPOINT ["/venv/bin/python3", "main.py"]

2
version-bump/.dockerignore

@ -0,0 +1,2 @@
*
!main.py

25
version-bump/Dockerfile

@ -1,13 +1,22 @@
FROM python:3-slim FROM debian:12-slim AS build
RUN apt-get update && \
apt-get install --no-install-suggests -y --no-install-recommends python3-venv gcc libpython3-dev && \
python3 -m venv /venv && \
/venv/bin/pip install --upgrade pip setuptools wheel
ADD . /app
WORKDIR /app FROM build AS build-venv
RUN /venv/bin/pip install --disable-pip-version-check --no-cache-dir lxml
RUN /venv/bin/pip install --disable-pip-version-check --no-cache-dir pyyaml
FROM gcr.io/distroless/python3-debian12:debug-nonroot AS final
RUN pip3 install lxml --target=/app USER nonroot
RUN pip3 install pyyaml --target=/app
ENV PYTHONPATH /app COPY --from=build-venv /venv /venv
# Must chown files since non-root user doesn't have access to /app to write output file
COPY --chown=nonroot:nonroot . /app
WORKDIR /app
CMD ["/app/main.py"] ENTRYPOINT ["/venv/bin/python3", "main.py"]
ENTRYPOINT [ "python", "-u" ]
Loading…
Cancel
Save