Add GH Pages infrastructure
Start to migrate from README.md to the Pages infrastructure for nicer looking and more organized docs.
This commit is contained in:
parent
2077e64595
commit
d913e9ba82
|
|
@ -0,0 +1,43 @@
|
||||||
|
name: Docs
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: ["main"]
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
|
permissions:
|
||||||
|
contents: read
|
||||||
|
pages: write
|
||||||
|
id-token: write
|
||||||
|
|
||||||
|
concurrency:
|
||||||
|
group: "pages"
|
||||||
|
cancel-in-progress: true
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
- name: Setup Pages
|
||||||
|
uses: actions/configure-pages@v3
|
||||||
|
- name: Build with Jekyll
|
||||||
|
uses: actions/jekyll-build-pages@v1
|
||||||
|
with:
|
||||||
|
source: ./docs
|
||||||
|
destination: ./_site
|
||||||
|
- name: Upload artifact
|
||||||
|
uses: actions/upload-pages-artifact@v1
|
||||||
|
|
||||||
|
# Deployment job
|
||||||
|
deploy:
|
||||||
|
environment:
|
||||||
|
name: github-pages
|
||||||
|
url: ${{ steps.deployment.outputs.page_url }}
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
needs: build
|
||||||
|
steps:
|
||||||
|
- name: Deploy to GitHub Pages
|
||||||
|
id: deployment
|
||||||
|
uses: actions/deploy-pages@v1
|
||||||
127
README.md
127
README.md
|
|
@ -1,118 +1,21 @@
|
||||||
# Goals
|
# centos-boot
|
||||||
|
|
||||||
This project's toplevel goal is to create base *bootable* container images
|
Create and maintain base *bootable* container images from Fedora ELN and
|
||||||
from Fedora ELN and CentOS Stream packages.
|
CentOS Stream packages.
|
||||||
|
|
||||||
## Status
|
The longer term vision of this project is that the build infrastructure
|
||||||
|
(and possibly some of the container definitions) move into the respective
|
||||||
|
upstream operating systems. For now, this project acts as a more central
|
||||||
|
point for this across these distributions.
|
||||||
|
|
||||||
This is an in-development project not intended for production use yet.
|
## Motivation
|
||||||
|
|
||||||
## Trying it out
|
The original Docker container model of using "layers" to model
|
||||||
|
applications has been extremely successful. This project
|
||||||
|
aims to apply the same technique for bootable host systems - using
|
||||||
|
standard OCI/Docker containers as a transport and delivery format
|
||||||
|
for base operating system updates.
|
||||||
|
|
||||||
See [install.md](./install.md).
|
## More information
|
||||||
|
|
||||||
## Differences from Fedora CoreOS
|
See the [project documentation](https://centos.github.io/centos-boot/).
|
||||||
|
|
||||||
Fedora CoreOS today is not small; there are multiple reasons for this, but
|
|
||||||
primarily because it was created in a pre-bootable-container time. Not everyone
|
|
||||||
wants e.g. moby-engine.
|
|
||||||
|
|
||||||
But going beyond size, the images produced by this project will focus
|
|
||||||
on a container-native flow. We will ship a (container) image that does not
|
|
||||||
include Ignition for example.
|
|
||||||
|
|
||||||
## Differences from RHEL CoreOS
|
|
||||||
|
|
||||||
We sometimes say that RHEL CoreOS [has FCOS as an upstream][1] but this is only
|
|
||||||
kind of true; RHEL CoreOS includes a subset of FCOS content, and is lifecycled
|
|
||||||
with OCP.
|
|
||||||
|
|
||||||
An explicit goal of this project is to produce bootable container images
|
|
||||||
that can be used as *base images* for RHEL CoreOS; for more on this, see e.g.
|
|
||||||
<https://github.com/openshift/os/issues/799>
|
|
||||||
|
|
||||||
## Differences from RHEL for Edge
|
|
||||||
|
|
||||||
It is an explicit goal that CentOS boot also becomes a "base input" to RHEL for Edge.
|
|
||||||
|
|
||||||
## What does CentOS boot means
|
|
||||||
|
|
||||||
From [Wikipedia](https://en.wikipedia.org/wiki/Bamboo_Forest_(Kyoto,_Japan)):
|
|
||||||
|
|
||||||
> Bamboo Forest, Arashiyama Bamboo Grove or CentOS boot Bamboo Forest, is a natural
|
|
||||||
> forest of bamboo in Arashiyama, Kyoto, Japan
|
|
||||||
|
|
||||||
[1]: https://github.com/openshift/os/blob/master/docs/faq.md#q-what-is-coreos
|
|
||||||
|
|
||||||
## Demonstration base images for Project CentOS boot
|
|
||||||
|
|
||||||
These images are technology demonstrators, not for production use. The
|
|
||||||
intention is that these images are generated by the OS vendor or
|
|
||||||
distribution.
|
|
||||||
Or, you can fork this repository and generate your own via
|
|
||||||
`rpm-ostree compose image`.
|
|
||||||
|
|
||||||
## Operating system sources
|
|
||||||
|
|
||||||
At the moment these demonstration builds use Fedora ELN and CentOS Stream 9.
|
|
||||||
|
|
||||||
## Tiers
|
|
||||||
|
|
||||||
### Tier 0
|
|
||||||
|
|
||||||
This is the basic tier; it has effectively just:
|
|
||||||
|
|
||||||
- kernel systemd selinux-policy-targeted bootc
|
|
||||||
|
|
||||||
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.
|
|
||||||
|
|
||||||
### 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)
|
|
||||||
|
|
||||||
- `quay.io/centos-boot/fedora-tier-1:eln`
|
|
||||||
|
|
||||||
### 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.
|
|
||||||
|
|
||||||
## Building
|
|
||||||
|
|
||||||
Here's an example command:
|
|
||||||
|
|
||||||
```shell
|
|
||||||
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/>
|
|
||||||
|
|
||||||
## Badges
|
|
||||||
|
|
||||||
| Badge | Description | Service |
|
|
||||||
| ----------------------- | -------------------- | ------------ |
|
|
||||||
| [![Renovate][1]][2] | Dependencies | Renovate |
|
|
||||||
| [![Pre-commit][3]][4] | Static quality gates | pre-commit |
|
|
||||||
|
|
||||||
[1]: https://img.shields.io/badge/renovate-enabled-brightgreen?logo=renovate
|
|
||||||
[2]: https://renovatebot.com
|
|
||||||
[3]: https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit
|
|
||||||
[4]: https://pre-commit.com/
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,14 @@
|
||||||
|
# Bundler setup for jekyll to be deployed on github pages.
|
||||||
|
|
||||||
|
source "https://rubygems.org"
|
||||||
|
|
||||||
|
# Note that we're using the github-pages gem to mimic the GitHub pages
|
||||||
|
# automated setup. That installs jekyll, a default set of jekyll
|
||||||
|
# plugins, and a modified jekyll configuration.
|
||||||
|
group :jekyll_plugins do
|
||||||
|
gem "github-pages"
|
||||||
|
gem "jekyll-remote-theme"
|
||||||
|
end
|
||||||
|
|
||||||
|
# Prefer the GitHub flavored markdown version of kramdown.
|
||||||
|
gem "kramdown-parser-gfm"
|
||||||
|
|
@ -0,0 +1,58 @@
|
||||||
|
title: containers/bootc
|
||||||
|
description: bootc documentation
|
||||||
|
baseurl: "/centos-boot"
|
||||||
|
url: "https://centos.github.io"
|
||||||
|
# Comment above and use below for local development
|
||||||
|
# url: "http://localhost:4000"
|
||||||
|
permalink: /:title/
|
||||||
|
markdown: kramdown
|
||||||
|
kramdown:
|
||||||
|
typographic_symbols:
|
||||||
|
ndash: "--"
|
||||||
|
mdash: "---"
|
||||||
|
|
||||||
|
# Exclude the README and the bundler files that would normally be
|
||||||
|
# ignored by default.
|
||||||
|
exclude:
|
||||||
|
- README.md
|
||||||
|
- Gemfile
|
||||||
|
- Gemfile.lock
|
||||||
|
- prep-docs.sh
|
||||||
|
- vendor/
|
||||||
|
|
||||||
|
# These are copies of the apidoc/html and man/html directories. Run
|
||||||
|
# prep-docs.sh before jekyll to put it in place.
|
||||||
|
include: [reference, man]
|
||||||
|
|
||||||
|
remote_theme: just-the-docs/just-the-docs@v0.4.1
|
||||||
|
plugins:
|
||||||
|
- jekyll-remote-theme
|
||||||
|
|
||||||
|
color_scheme: coreos
|
||||||
|
|
||||||
|
# Aux links for the upper right navigation
|
||||||
|
aux_links:
|
||||||
|
"bootc on GitHub":
|
||||||
|
- "https://github.com/containers/bootc"
|
||||||
|
|
||||||
|
footer_content: "Copyright © <a href=\"https://www.redhat.com\">Red Hat, Inc.</a> and <a href=\"https://github.com/containers\">others</a>."
|
||||||
|
|
||||||
|
# Footer last edited timestamp
|
||||||
|
last_edit_timestamp: true
|
||||||
|
last_edit_time_format: "%b %e %Y at %I:%M %p"
|
||||||
|
|
||||||
|
# Footer "Edit this page on GitHub" link text
|
||||||
|
gh_edit_link: true
|
||||||
|
gh_edit_link_text: "Edit this page on GitHub"
|
||||||
|
gh_edit_repository: "https://github.com/containers/bootc"
|
||||||
|
gh_edit_branch: "main"
|
||||||
|
gh_edit_source: docs
|
||||||
|
gh_edit_view_mode: "tree"
|
||||||
|
|
||||||
|
compress_html:
|
||||||
|
clippings: all
|
||||||
|
comments: all
|
||||||
|
endings: all
|
||||||
|
startings: []
|
||||||
|
blanklines: false
|
||||||
|
profile: false
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
$link-color: #53a3da;
|
||||||
|
|
@ -1,5 +1,9 @@
|
||||||
# Project CentOS boot tier-1 and cloud agents
|
# Project CentOS boot tier-1 and cloud agents
|
||||||
|
|
||||||
|
---
|
||||||
|
nav_order: 2
|
||||||
|
---
|
||||||
|
|
||||||
The tier-0 and tier-1 images today do not contain any special
|
The tier-0 and tier-1 images today do not contain any special
|
||||||
hypervisor-specific agents. The following specifically are not included
|
hypervisor-specific agents. The following specifically are not included
|
||||||
for example:
|
for example:
|
||||||
|
|
@ -1,5 +1,9 @@
|
||||||
# Relationship with CoreOS
|
# Relationship with CoreOS
|
||||||
|
|
||||||
|
---
|
||||||
|
nav_order: 5
|
||||||
|
---
|
||||||
|
|
||||||
The CoreOS Container Linux project was very successful, spawning multiple projects
|
The CoreOS Container Linux project was very successful, spawning multiple projects
|
||||||
and derivatives that continue to see widespread use today.
|
and derivatives that continue to see widespread use today.
|
||||||
|
|
||||||
|
|
@ -0,0 +1,118 @@
|
||||||
|
# Goals
|
||||||
|
|
||||||
|
This project's toplevel goal is to create base *bootable* container images
|
||||||
|
from Fedora ELN and CentOS Stream packages.
|
||||||
|
|
||||||
|
## Status
|
||||||
|
|
||||||
|
This is an in-development project not intended for production use yet.
|
||||||
|
|
||||||
|
## Trying it out
|
||||||
|
|
||||||
|
See [install.md](./install.md).
|
||||||
|
|
||||||
|
## Differences from Fedora CoreOS
|
||||||
|
|
||||||
|
Fedora CoreOS today is not small; there are multiple reasons for this, but
|
||||||
|
primarily because it was created in a pre-bootable-container time. Not everyone
|
||||||
|
wants e.g. moby-engine.
|
||||||
|
|
||||||
|
But going beyond size, the images produced by this project will focus
|
||||||
|
on a container-native flow. We will ship a (container) image that does not
|
||||||
|
include Ignition for example.
|
||||||
|
|
||||||
|
## Differences from RHEL CoreOS
|
||||||
|
|
||||||
|
We sometimes say that RHEL CoreOS [has FCOS as an upstream][1] but this is only
|
||||||
|
kind of true; RHEL CoreOS includes a subset of FCOS content, and is lifecycled
|
||||||
|
with OCP.
|
||||||
|
|
||||||
|
An explicit goal of this project is to produce bootable container images
|
||||||
|
that can be used as *base images* for RHEL CoreOS; for more on this, see e.g.
|
||||||
|
<https://github.com/openshift/os/issues/799>
|
||||||
|
|
||||||
|
## Differences from RHEL for Edge
|
||||||
|
|
||||||
|
It is an explicit goal that CentOS boot also becomes a "base input" to RHEL for Edge.
|
||||||
|
|
||||||
|
## What does CentOS boot means
|
||||||
|
|
||||||
|
From [Wikipedia](https://en.wikipedia.org/wiki/Bamboo_Forest_(Kyoto,_Japan)):
|
||||||
|
|
||||||
|
> Bamboo Forest, Arashiyama Bamboo Grove or CentOS boot Bamboo Forest, is a natural
|
||||||
|
> forest of bamboo in Arashiyama, Kyoto, Japan
|
||||||
|
|
||||||
|
[1]: https://github.com/openshift/os/blob/master/docs/faq.md#q-what-is-coreos
|
||||||
|
|
||||||
|
## Demonstration base images for Project CentOS boot
|
||||||
|
|
||||||
|
These images are technology demonstrators, not for production use. The
|
||||||
|
intention is that these images are generated by the OS vendor or
|
||||||
|
distribution.
|
||||||
|
Or, you can fork this repository and generate your own via
|
||||||
|
`rpm-ostree compose image`.
|
||||||
|
|
||||||
|
## Operating system sources
|
||||||
|
|
||||||
|
At the moment these demonstration builds use Fedora ELN and CentOS Stream 9.
|
||||||
|
|
||||||
|
## Tiers
|
||||||
|
|
||||||
|
### Tier 0
|
||||||
|
|
||||||
|
This is the basic tier; it has effectively just:
|
||||||
|
|
||||||
|
- kernel systemd selinux-policy-targeted bootc
|
||||||
|
|
||||||
|
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.
|
||||||
|
|
||||||
|
### 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)
|
||||||
|
|
||||||
|
- `quay.io/centos-boot/fedora-tier-1:eln`
|
||||||
|
|
||||||
|
### 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.
|
||||||
|
|
||||||
|
## Building
|
||||||
|
|
||||||
|
Here's an example command:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
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/>
|
||||||
|
|
||||||
|
## Badges
|
||||||
|
|
||||||
|
| Badge | Description | Service |
|
||||||
|
| ----------------------- | -------------------- | ------------ |
|
||||||
|
| [![Renovate][1]][2] | Dependencies | Renovate |
|
||||||
|
| [![Pre-commit][3]][4] | Static quality gates | pre-commit |
|
||||||
|
|
||||||
|
[1]: https://img.shields.io/badge/renovate-enabled-brightgreen?logo=renovate
|
||||||
|
[2]: https://renovatebot.com
|
||||||
|
[3]: https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit
|
||||||
|
[4]: https://pre-commit.com/
|
||||||
|
|
@ -1,5 +1,10 @@
|
||||||
# Trying out Project CentOS boot development builds
|
# Trying out development builds
|
||||||
|
|
||||||
|
---
|
||||||
|
nav_order: 2
|
||||||
|
---
|
||||||
|
|
||||||
|
<!--
|
||||||
## Booting directly from KVM guest image
|
## Booting directly from KVM guest image
|
||||||
|
|
||||||
There's a provisional KVM guest image uploaded here:
|
There's a provisional KVM guest image uploaded here:
|
||||||
|
|
@ -11,6 +16,7 @@ and in general all the same techniques that work the Fedora Cloud Base or the
|
||||||
RHEL KVM guest image.
|
RHEL KVM guest image.
|
||||||
|
|
||||||
Once you've booted this, use e.g. `bootc update` to fetch updates.
|
Once you've booted this, use e.g. `bootc update` to fetch updates.
|
||||||
|
-->
|
||||||
|
|
||||||
## Rebasing from Fedora CoreOS
|
## Rebasing from Fedora CoreOS
|
||||||
|
|
||||||
Loading…
Reference in New Issue