Skip to content

Commit

Permalink
dnsmasq: switch to Debian, pin versions
Browse files Browse the repository at this point in the history
Turns out Alpine project does not really follow semver and removes any
outdated packages from their repositories as soon as the new versions
are released. This results in a non-reproducible builds.

See https://gitlab.alpinelinux.org/alpine/abuild/-/issues/9996 for more
details.

This commit switches the base image to a slimmed down version of Debian,
which allows us to use more stable package versioning at the cost of
increasing image size from ~75MB to ~120MB.

Closes PUC-241.
  • Loading branch information
skrobul committed Apr 23, 2024
1 parent 173bfc1 commit 2690c82
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 2 deletions.
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@

FROM python:3.12.2-alpine3.19 as builder

LABEL org.opencontainers.image.title="Python 3.12 image base image"
Expand Down
7 changes: 5 additions & 2 deletions containers/Dockerfile.dnsmasq
Original file line number Diff line number Diff line change
@@ -1,7 +1,10 @@
# syntax=docker/dockerfile:1
FROM alpine:3.19.1
FROM debian:bookworm-20240408-slim

RUN apk add --update --no-cache dnsmasq=2.90-r2 python3=3.11.8-r0 py3-pip=23.3.1-r0 py3-jinja2=3.1.2-r3
RUN apt-get update && \
apt-get -y install --no-install-recommends dnsmasq=2.89-1 python3-jinja2=3.1.2-1 && \
apt-get clean && \
rm -rf /var/lib/apt/lists/*

COPY common/helpers.sh /helpers.sh
COPY dnsmasq/entry-point.sh /entry-point.sh
Expand Down

0 comments on commit 2690c82

Please sign in to comment.