Chisel Ubuntu Axum
Chisel Ubuntu Axum
Section titled “Chisel Ubuntu Axum”Shared chiseled Ubuntu 24.04 runtime base image for all KBVE Axum services.
What is Chisel?
Section titled “What is Chisel?”Chisel is a tool from Canonical that slices Ubuntu packages into minimal filesystem layers. Instead of a full Ubuntu image (~80MB+), chisel extracts only the exact files needed — resulting in a scratch-based image with just the runtime libraries.
Contents
Section titled “Contents”- Chiseled Ubuntu 24.04 rootfs — minimal, no shell, no package manager
- jemalloc — memory allocator pre-configured via
LD_PRELOAD - libpq5 — PostgreSQL client library
- CA certificates — for HTTPS/TLS connections
- Non-root user —
appuser:10001
Service Dockerfiles reference this as their runtime base:
FROM ghcr.io/kbve/chisel-ubuntu-axum:24.04 AS runtime
COPY --from=builder --chown=10001:10001 /app/target/release/my-service /app/my-service
EXPOSE 4321USER 10001:10001ENTRYPOINT ["/app/my-service"]This eliminates ~3 Docker stages (chisel + jemalloc + libpq) from each service Dockerfile, saving build time and disk space in CI.
Services
Section titled “Services”| Service | Status |
|---|---|
axum-discordsh | planned |
axum-kbve | planned |
axum-memes | planned |
axum-herbmail | planned |
axum-chuckrpg | planned |
axum-cryptothrone | planned |