Useful OCI container images for --os=freebsd
This project packages native FreeBSD software as OCI containers, combining Jails with modern container tooling.
OCI containers on FreeBSD are a novel way to combine the time-tested power of FreeBSD Jails with the simplicity and ubiquity of OCI-compatible tooling (familiar from Linux platforms like Podman, Docker and Kubernetes). They are usable with containerd (via runj) as well as podman/buildah (via ocijail), all of which are available via FreeBSD packages or ports.
Although FreeBSD's excellent Linux compatibility layer allows the use of Linux-based containers, there is now an opportunity to package FreeBSD native software as OCI containers. Currently, however, there is a dearth of images to get people started — this repository seeks to fill that gap.
FreeBSD's pkg repository provides the included software. Images are built with
GitHub Actions and tagged with their minor and patch versions where applicable
(in addition to latest). Images are rebuilt every week as well as on
significant changes in the build code. For guaranteed consistency, use the
image SHA; for regular updates and improvements, follow the version tags that
best suit your needs.
- Get it from: ghcr.io/fst777/userland
- Pull using
ghcr.io/fst777/userland:latest
A curated set of additional packages intended to provide a fairly complete
FreeBSD userland on top of freebsd-runtime.
- Get it from: ghcr.io/fst777/busybox
- Pull using
ghcr.io/fst777/busybox:latest
What it says on the tin. Usable as a minimal userland container, suitable for
hosting apps/scripts that require core shell utilities. Think of it as an
alpine image for FreeBSD.
- Get it from: ghcr.io/fst777/toybox
- Pull using
ghcr.io/fst777/toybox:latest
What it says on the tin. Contains FreeBSD's own /bin/sh since toybox does not
include a shell. Usable as a minimal userland container, suitable for hosting
apps/scripts that require core shell utilities.