docs: describe the image as the official Node 22 Debian slim image

The unreleased changelog entry said the image moved to Wolfi. It now
names the official Node image, why (Raspberry Pi 4 rendering, Node
security releases arriving with the image), that the image carries no
package manager, and that psql is no longer in the app image. The README
and the getting-started prerequisites say the same.
This commit is contained in:
Marc-André Bombeck committed 2026-11-04 13:14:04 +01:00
1 parent 09d932ce2a
commit e547a77683
3 files changed
+17 -12

No files matched your search

+14 -10
View File
@@ -51,16 +51,20 @@
### Changed ### Changed
- **The image runs on Wolfi instead of Alpine.** The runtime is glibc now, - **The image runs on the official Node 22 image (Debian slim) instead of
so the native page renderer, password hashing and the Prisma engine run Alpine.** The runtime is glibc now, so the native page renderer,
their glibc builds. The published arm64 image renders PDF pages on a password hashing and the Prisma engine run their glibc builds. The
Raspberry Pi 4 again, where the Alpine build of the renderer needs CPU published arm64 image renders PDF pages on a Raspberry Pi 4 again, where
features an ARMv8.0 core lacks. The compressed image is a little smaller the Alpine build of the renderer needs CPU features an ARMv8.0 core
than before. A health check that still calls `wget`, from a compose lacks. Node security releases now reach the image with the official
file copied before this release or a platform template, keeps working: Node image, usually within days. The image carries no package manager:
the image carries a small `wget` that answers health checks and nothing npm, npx, corepack and yarn are removed. `pg_dump` and `pg_restore` are
else. The current `docker-compose.yml` probes with Node directly, and PostgreSQL 18.6, the bundled database's version; `psql` is no longer in
that is the one to switch to. (#1311) the app image, so run it in the `db` container. A health check that
still calls `wget`, from a compose file copied before this release or a
platform template, keeps working: the image carries a small `wget` that
answers health checks and nothing else. The current `docker-compose.yml`
probes with Node directly, and that is the one to switch to. (#1311)
- **The app connects to the database with less power.** On Postgres 17 or - **The app connects to the database with less power.** On Postgres 17 or
later, with a database user that may create roles (the bundled compose later, with a database user that may create roles (the bundled compose
file's user may), the app and the worker now connect as a role of their file's user may), the app and the worker now connect as a role of their
+1 -1
View File
@@ -105,7 +105,7 @@ The App Store listing carries a small price, which exists to cover Apple's yearl
## Tech stack ## Tech stack
Next.js 16 (App Router, React Server Components), TypeScript strict, PostgreSQL 18 with Prisma, pg-boss for jobs, Tailwind CSS 4 + shadcn/ui, Recharts, WebAuthn passkeys, Vitest + Playwright, multi-stage glibc Docker image (Debian build, Wolfi runtime). The OpenAPI 3.1 contract for native clients is generated from the Zod schemas at [`docs/api/openapi.yaml`](docs/api/openapi.yaml). Next.js 16 (App Router, React Server Components), TypeScript strict, PostgreSQL 18 with Prisma, pg-boss for jobs, Tailwind CSS 4 + shadcn/ui, Recharts, WebAuthn passkeys, Vitest + Playwright, multi-stage Docker image on the official Node 22 Debian slim base. The OpenAPI 3.1 contract for native clients is generated from the Zod schemas at [`docs/api/openapi.yaml`](docs/api/openapi.yaml).
## Documentation ## Documentation
+2 -1
View File
@@ -10,7 +10,8 @@ already installed, longer if a TLS-fronted public hostname is in scope
- **Docker 24+ with Compose v2.** The bundled `docker-compose.yml` - **Docker 24+ with Compose v2.** The bundled `docker-compose.yml`
pulls a multi-arch image from GitHub Container Registry (linux/amd64 pulls a multi-arch image from GitHub Container Registry (linux/amd64
and linux/arm64), so a Raspberry Pi 4 or 5 or an x86 VPS all work and linux/arm64), so a Raspberry Pi 4 or 5 or an x86 VPS all work
unchanged. The image runs on glibc (a Wolfi base). Document thumbnails and unchanged. The image is built on the official Node 22 image (Debian
slim, glibc). Document thumbnails and
scanned-PDF rendering use a native renderer that runs on every arm64 scanned-PDF rendering use a native renderer that runs on every arm64
board, the Pi 4 included, and on x86-64 CPUs with AVX2; on an older x86 board, the Pi 4 included, and on x86-64 CPUs with AVX2; on an older x86
CPU (Celeron/Atom-class NAS chips) it switches itself off and those two CPU (Celeron/Atom-class NAS chips) it switches itself off and those two