Skip to content

FreeBSD Base FreeBSD Base

Description / nameInput element
Container Registry

Build Status Last Commit

FreeBSD base image with s6 supervision

Registry ghcr.io/daemonless/base
Daemonless daemonless/base
Source freebsd/freebsd-src
Website www.freebsd.org

Version Tags

Multi-arch manifests — resolve automatically to the right image for your platform.

Tag Description Best For
15 / 15-quarterly / 15.1 / latest FreeBSD Port. Built from FreeBSD packages. Production stability.
15-latest / 15.1-latest FreeBSD Latest. Rolling package updates. Staying current.
Tag Description Best For
15-amd64 / 15-quarterly-amd64 / 15.1-amd64 / latest-amd64 FreeBSD Port. Built from FreeBSD packages. Production stability.
15-latest-amd64 / 15.1-latest-amd64 FreeBSD Latest. Rolling package updates. Staying current.
Tag Description Best For
15-aarch64 / 15-quarterly-aarch64 / 15.1-aarch64 / latest-aarch64 FreeBSD Port. Built from FreeBSD packages. Production stability.
15-latest-aarch64 / 15.1-latest-aarch64 FreeBSD Latest. Rolling package updates. Staying current.

Before deploying, ensure your host environment is ready. See the Quick Start Guide for host setup instructions, including the security model for host vs. container privileges.

Deployment

1
2
3
4
5
6
services:
  base:
    image: "ghcr.io/daemonless/base:latest"
    container_name: base
    # always (not unless-stopped) so FreeBSD's podman rc.d auto-starts it at boot
    restart: always

Save as compose.yaml, then run podman-compose up -d.

podman run -d --name base \
  ghcr.io/daemonless/base:latest

Save as run.sh, then run sh run.sh.

1
2
3
4
5
6
- name: Deploy base
  containers.podman.podman_container:
    name: base
    image: "ghcr.io/daemonless/base:latest"
    state: started
    restart_policy: always

Save as base-deploy.yaml, then run ansible-playbook base-deploy.yaml.

Experimental

Bastille's OCI support is experimental. It requires buildah, shares the host network stack (inherit), and persists image-declared volumes under --data-path.

1
2
3
4
5
services:
  base:
    image: "ghcr.io/daemonless/base:latest"
    container_name: base
    network_mode: host  # jail shares host networking

Save as podman-compose.yml, then run bastille up.

bastille create -O \
  base ghcr.io/daemonless/base:latest inherit

Interactive Configuration

Implementation Details

  • Architectures: amd64, aarch64
  • User: root (UID/GID set via PUID/PGID). Defaults to 1000:1000.
  • Base: Built on ghcr.io/daemonless/base (FreeBSD 15.1).

Need help? Join our Discord community.