1 Commits
Author SHA1 Message Date
clawbot 347ac7c954 Run pixad on the Alpine release it is built on (closes #229)
check / check (push) Waiting to run
The runtime stage of the Dockerfile moves from alpine:3.21 to
alpine:3.22, pinned by digest. The test phase and the build stage use
golang:1.25.4-alpine, which is Alpine 3.22, so pixad was compiled
against libvips 8.16 and ran against 8.15. All three stages now install
their packages from the same Alpine release, where the runtime packages
keep their names. README.md now says the image has libvips 8.16.

Model: opus-5-5
2026-10-08 05:13:54 +00:00
3 changed files with 10 additions and 4 deletions
+5 -3
View File
@@ -77,9 +77,11 @@ RUN version="${VERSION:-$(git describe --tags --always)}"; \
-o /pixad ./cmd/pixad
# Runtime stage, and the last one: a plain `docker build .` builds this
# stage and what it depends on, and nothing else.
# alpine:3.21, 2026-02-25
FROM alpine:3.21@sha256:c3f8e73fdb79deaebaa2037150150191b9dcbfba68b4a46d70103204c53f4709
# stage and what it depends on, and nothing else. It must use the Alpine
# release the golang image above is based on, so that pixad runs against
# the libvips and musl it was built with.
# alpine:3.22, 2026-10-08
FROM alpine:3.22@sha256:5291449c3df73caf6ed85e649dec1b9e818b39a5d8c871e97afc13e9cd5e8fa8
# Install runtime dependencies only. vips-jxl is libvips' JPEG XL
# support, without which pixad does not start.
+1 -1
View File
@@ -88,7 +88,7 @@ or with 1 when images were still being processed after those 5 seconds or
another part of pixa failed to stop. A request not finished by then is cut off.
`docker stop` waits 10 seconds before it kills the container.
Outside Docker, pixa needs libvips (the image has 8.15) and libheif to run, as
Outside Docker, pixa needs libvips (the image has 8.16) and libheif to run, as
it uses libvips through CGO. pixad does not start unless libvips has its JPEG XL
support, which on Alpine is the `vips-jxl` package and which the nix and brew
packages of libvips include, as do the apt ones from Debian 12 and Ubuntu 24.04
+4
View File
@@ -30,6 +30,10 @@ P2: security: per-IP rate limiting on the image routes
# Completed Steps
- 2026-10-08 pixad runs on the Alpine release it is built on (closes #229): the
runtime stage of the `Dockerfile` uses `alpine:3.22`, the release of the
`golang:1.25.4-alpine` image that the test phase and the build stage use, so
all three have libvips 8.16 instead of 8.15 in the runtime image.
- 2026-10-08 requests no longer wait behind eviction queries that read a whole
table (closes #227): the new `cache_usage` table holds the total cache usage,
kept up to date by triggers on `source_content` and `variant_content` in the