diff --git a/README.md b/README.md index 49caa41..5f58d68 100644 --- a/README.md +++ b/README.md @@ -6,34 +6,64 @@ These images are technology demonstrators, not for production use. The intentio generated by the OS vendor or distribution. Or, you can fork this repository and generate your own via `rpm-ostree compose image`. -## Available images +# Operating system sources -### Fedora 38 +At the moment these demonstration builds use Fedora 38 and CentOS Stream 9. -[registry.gitlab.com/cgwalters-playground/bootc-demo-base-images/fedora-boot:latest](https://gitlab.com/cgwalters-playground/bootc-demo-base-images/container_registry/4567470) +# Tiers +## Tier 0 -### CentOS Stream 9 +This is the basic tier; it has effectively just: -[registry.gitlab.com/cgwalters-playground/bootc-demo-base-images/c9s-boot](https://gitlab.com/cgwalters-playground/bootc-demo-base-images/container_registry/4567470) +- kernel systemd selinux-policy-targeted bootc -## What's in them? +You are generally going to need to generate derived images from this; installing +it on its own will boot to a system with no automatic networking support, no SSH, +and no default passwords etc. -The [current manifest definitions](tier-1/) were forked from Fedora CoreOS, but significantly +## Tier 1 + +This is larger system. + +- NetworkManager, chrony +- rpm-ostree (to install packages and in case it's useful "day 2") +- openssh-server + +At the current time, it does not include Ignition or cloud-init; so you will +still need to derive from it in order to inject a mechanism to log in in many +cases. However, it will work to install it using e.g. Anaconda and set up +users and passwords that way. + +# Image matrix (Fedora) + +- `registry.gitlab.com/cgwalters-playground/sagano/fedora-boot-tier-0:38` +- `registry.gitlab.com/cgwalters-playground/sagano/fedora-boot-tier-1:38` + +# Image matrix (CentOS Stream 9) + +- `registry.gitlab.com/cgwalters-playground/sagano/centos-boot-tier-0:stream9` +- `registry.gitlab.com/cgwalters-playground/sagano/centos-boot-tier-0-rt:stream9` (realtime kernel) +- `registry.gitlab.com/cgwalters-playground/sagano/centos-boot-tier-1:stream9` +- `registry.gitlab.com/cgwalters-playground/sagano/centos-boot-tier-1-rt:stream9` (realtime kernel) + +## More about image sources + +The current manifest definitions [tier-0](tier-0) and [tier-1](tier-1) were forked from Fedora CoreOS, but significantly cut down. The existing content set is obviously subject to change and debate. -Ideally, we support a workflow where even `rpm-ostree` can be removed after builds. - # Building Here's an example command: ``` -$ sudo rpm-ostree compose image --authfile ~/.config/containers/myquay.json --cachedir=cache -i --format=oci fedora.yaml fedora.oci +$ sudo rpm-ostree compose image --authfile ~/.config/containers/myquay.json --cachedir=cache -i --format=ociarchive centos-tier-0-stream9.yaml centos-tier-0-stream9.ociarchive ``` +In some situations, copying to a local `.ociarchive` file is convenient. You can also push to a registry with `--format=registry`. + More information at https://coreos.github.io/rpm-ostree/container/ # Plan