Fedora CoreOS is now also an OCI container image that can be used as a base image to create bootable derivative containers.
See coreos/fedora-coreos-docs#540 for more information about how to use this.
Additional background links are:
- https://fedoraproject.org/wiki/Changes/OstreeNativeContainer
- https://github.com/coreos/enhancements/blob/main/os/coreos-layering.md
This repository contains example containers to demonstrate functionality.
- ansible-firewalld: Demos using Ansible to configure firewalld
- build-zfs-module: Build the ZFS third party module as rpm and install it
- butane: Demos using https://github.com/coreos/butane
- convert-ubuntu-package: Convert an Ubuntu package to rpm using alien and install it.
- dracut-module: Install and run a dracut module
- initramfs-module: Demos generating a initramfs with specific modules added and omitted.
- inject-go-binary: Demos adding building and injecting a Go binary + systemd unit
- podman-next: Use COPR to install the podman-next package
- rsyslog: Install and configure rsyslog to forward to a remote host
- replace-kernel: Replace the kernel using packages from Koji
- replace-systemd: Replacing a base package, in this case systemd
- selinux: Demos changing a SELinux boolean
- tailscale: Demos https://tailscale.com/download/linux/fedora
- wifi: Install support for wireless networks along with pre-baked configuration to join a network
- loading-kernel-module: Demo loading a kernel module to the worker nodes
-
Build an image using an example from this repo and push it to an image registry:
set IMAGE (podman build $EXAMPLE -q) podman push $IMAGE quay.io/$USER/$EXAMPLE
-
Setup a system that has
rpm-ostree
installed. One possibility is usingvirt-install
. -
Rebase the system with
rpm-ostree
to the image