This morning I posted how CoreOS needed more memory than its name implied. I also had an adventure with the installer.
If you look at the official install docs for CoreOS, you install from ISO with this command:
$ sudo su - root
# coreos-install -d /dev/sda
Except you can't. The ISO doesn't contain the production image. Or if it did, it wasn't made clear and/or I couldn't find it.
So I update my networking, to allow it to download.
# ifconfig eth0 <ethernet-ip/24>
# route add default gw <gateway-ip>
Still no dice, it complained it couldn't resolve the address. Shoot yes, I didn't have an entry in resolv.conf.
echo "208.67.220.220" >> /etc/resolv.conf
Still nothing. As John Cleese said of a certain gentleman's walk, this was getting rather silly.
Reading the documentation, you define networking in the following horrible systemd path. So I edited the file:
vim /etc/systemd/network/static.network
And added the following:
[Match]
Name=eth0
[Network]
Address=<ethernet-ip>
Gateway=<gateway-ip>
DNS=208.67.220.220
Then it was simply a matter of restarting networking:
# service network restart
==> -su: service: command not found
Then it was simply a matter of restarting networking, using systemd's more streamlined syntax:
# systemctl restart systemd-networkd
And finally we were cooking with gas.
==> Downloading, writing and verifying coreos_production_image.bin.bz2...
You'll also want to specify a cloud-config as well.