Development variants
All 96 images publish a :latest-dev companion. Production and dev consume the same primary package from the same build — dev adds a shell, a package manager, and image-appropriate build or debugging tools.
Dev variants are intended for multi-stage builds and in-cluster debugging, not production workloads.
Multi-stage build
Build with the toolchain, ship without it.
FROM ghcr.io/rtvkiz/minimal-ruby:latest-dev AS build
WORKDIR /work
COPY Gemfile Gemfile.lock ./
RUN bundle install
FROM ghcr.io/rtvkiz/minimal-ruby:latest
COPY --from=build /work /work Interactive shell
Dev images retain the production entrypoint. Override it to get a shell.
docker run -it --entrypoint /bin/sh \
ghcr.io/rtvkiz/minimal-caddy:latest-dev Same pipeline, different scope
Dev images use the same signing, SBOM, provenance, and publish pipeline as production. They are excluded from the public CVE dashboard — their intentionally larger toolchain surface is not representative of the production image, so including them would misrepresent both.
Composition rules are documented in docs/dev-variants/CONVENTIONS.md.