๐บ Hardened Wolfi/apko Node.js images โ no shell/npm in production, daily rebuilds.
427
Hardened, minimal Node.js container images built on Wolfiโ with apkoโ โ no distro, no shell, no package manager in production.
Rebuilt daily from Wolfi's rolling-release package repo, so security patches land automatically. Every build is scanned with Trivyโ ; results and an auto-generated SBOM are tracked on GitHubโ .
Two variants per Node.js version โ 20, 22:
| Tag | Contains | Use for |
|---|---|---|
<version> | Node.js + CA certs only. No shell, no npm. | Production runtime |
<version>-dev | Same, plus npm and busybox (shell). | Builder stage โ installing dependencies |
Each tag is overwritten with the newest build; there is no latest tag (pick a version explicitly).
Since the production image has no shell or npm, install dependencies in a -dev builder stage and copy them into the hardened final image:
# ---- Builder: has npm + shell ----
FROM teogisis/wolfpack-node:22-dev AS builder
WORKDIR /app
COPY package*.json .
RUN npm ci --omit=dev
# ---- Final: hardened, no npm, no shell ----
FROM teogisis/wolfpack-node:22
WORKDIR /app
COPY --from=builder /app/node_modules ./node_modules
COPY . .
ENTRYPOINT ["/usr/bin/node", "index.js"]
Runs as a non-root user (uid/gid 65532) by default.
wolfpack-pythonโ ยท wolfpack-javaโ ยท wolfpack-dotnetโ
Build configs, CI pipeline, and up-to-date vulnerability scan results: github.com/Theo-Gkisis/wolfpackโ
Content type
Image
Digest
sha256:4a99f1479โฆ
Size
42.1 MB
Last updated
about 15 hours ago
docker pull teogisis/wolfpack-node:20