Hi! We're the other jailrun — a docker run-shaped OCI runtime for FreeBSD jails. Yes, two projects, both called jailrun, both started in 2026. Whatever prior anyone had on "who even builds FreeBSD jail tooling in 2026" — it was clearly miscalibrated, twice. Ours is younger and still pre-release, so the name headache is ours to deal with, not yours.
We think the two projects sit on adjacent layers rather than competing ones:
- jrun is compose-shaped: declarative multi-jail stacks, dependency ordering, provisioning, plus the VM bootstrap that gives macOS/Linux hosts jails at all.
- ours is
docker run-shaped: pull an OCI image, classify every Linux ELF in it, substitute a native FreeBSD binary wherever an equivalent exists (pkg/ports), fall back to Linuxulator only for the irreducible. ZFS snapshot/clone as the image store.
The proposal
Today the way to provision a jrun jail is an Ansible playbook (local or Hub). Which means a jrun user can't just take postgres:16 from Docker Hub — someone has to have written a playbook for it first. An OCI setup provider would close that gap:
jail "postgres-16" {
setup {
pg { type = "oci"; image = "docker.io/library/postgres:16"; }
}
forward {
pg { host = 6432; jail = 5432; }
}
}
Mechanically this looks like it fits without violence to either architecture:
- Your VM is a FreeBSD host, and bare FreeBSD is exactly what our runtime targets — it would run inside the VM, invoked by jrun at setup time.
- Our store/bakery layers were deliberately built as separable seams: "give me a rootfs ZFS dataset for image X" is an existing API, independent of our own jail engine. jrun keeps owning the jail lifecycle — exec/forward/mount/supervision all stay yours; the OCI provider only replaces the provisioning step.
- Stack-wise it's Python stdlib-only + shell-outs to skopeo/bsdtar/zfs. MIT licensed.
If there's any interest, we'd rather put together a prototype PR (a fork with type = "oci" wired end to end) than argue hypotheticals. And if this isn't a direction you want for jrun, that's a completely fine answer too — figured it was worth asking before we both keep building past each other.
Hi! We're the other jailrun — a
docker run-shaped OCI runtime for FreeBSD jails. Yes, two projects, both called jailrun, both started in 2026. Whatever prior anyone had on "who even builds FreeBSD jail tooling in 2026" — it was clearly miscalibrated, twice. Ours is younger and still pre-release, so the name headache is ours to deal with, not yours.We think the two projects sit on adjacent layers rather than competing ones:
docker run-shaped: pull an OCI image, classify every Linux ELF in it, substitute a native FreeBSD binary wherever an equivalent exists (pkg/ports), fall back to Linuxulator only for the irreducible. ZFS snapshot/clone as the image store.The proposal
Today the way to provision a jrun jail is an Ansible playbook (local or Hub). Which means a jrun user can't just take
postgres:16from Docker Hub — someone has to have written a playbook for it first. An OCI setup provider would close that gap:Mechanically this looks like it fits without violence to either architecture:
If there's any interest, we'd rather put together a prototype PR (a fork with
type = "oci"wired end to end) than argue hypotheticals. And if this isn't a direction you want for jrun, that's a completely fine answer too — figured it was worth asking before we both keep building past each other.