rpm-ostree/fedostree/README.md

102 lines
2.7 KiB
Markdown
Raw Normal View History

"fedostree"
===========
This project uses [rpm-ostree](https://github.com/cgwalters/rpm-ostree)
to commit multiple comps groups
Pulling and booting from a client machine
-----------------------------------------
First, install the ostree package, of course; make sure you have
ostree 2013.7 or newer.
yum install ostree
Now, this bit of one time initialization will both
create `/ostree` for you, as well as `/ostree/deploy/fedostree`.
ostree admin os-init fedostree
This step tells OSTree how to find the repository you built on
the server. You only need to do this once.
ostree remote add fedostree http://http://209.132.184.226/repo
Now, since we did not GPG sign our repo above, we need to disable GPG
verification. Add `gpg-verify=false` in the `[remote]` section.
nano /ostree/repo/config
At this point, we have only initialized configuration. Let's start
by downloading the "minimal" install (just @core):
ostree pull fedostree fedora/20/minimal
This step extracts the root filesystem, and updates the bootloader
configuration:
ostree admin deploy --os=fedostree fedora/20/minimal
We need to do some initial setup before we actually boot the system.
Copy in the storage configuration:
cp /etc/fstab /ostree/deploy/fedostree/current
And set a root password:
chroot /ostree/deploy/fedostree/current passwd
And there is one final (manual) step: You must copy your system's
kernel arguments from `/boot/grub2/grub.cfg` and add them to
`/boot/loader/entries/ostree-fedora-0.conf`, on the `options`
line. This step may be automated further in the future.
IMPORTANT NOTE: You must use selinux=0 for now.
Booting the system
------------------
Remember, at this point there is no impact on your installed system
except for additional disk space in the `/boot/loader` and `/ostree`
directories.
Reboot, and get a GRUB prompt. At the prompt, press `c`. Now, enter:
insmod blscfg
bls_import
Then press `Esc`. You should have an additional boot menu entry,
named `ostree:fedora:0`. Nagivate to it and press `Enter`.
Inside the system
-----------------
To upgrade, run as root:
ostree admin upgrade
Note that in our demo so far, we did not install `yum` (or even
`rpm`). Getting these to work fully is the next phase of the
`yum-ostree` development.
Switching trees
---------------
Remember, with OSTree, it's possible to atomically transition between
different complete bootable filesystem trees. Let's now try the
"standard-docker-io" tree:
ostree pull fedostree fedora/20/standard-docker-io
If you look at the [http://209.132.184.226/fedora-ostree-ci](script),
you can see this tree contains `@core`, `@standard`, and finally
`docker-io`.
Like above, let's now deploy it:
ostree admin deploy --os=fedostree fedora/20/standard-docker-io
systemctl reboot