2015-02-09 04:55:14 +00:00
|
|
|
# RancherOS
|
|
|
|
|
|
|
|
It's containers all the way down! Everything is powered by Docker (I mean everything).
|
|
|
|
|
|
|
|
## Building
|
|
|
|
|
2015-02-09 05:10:58 +00:00
|
|
|
Docker 1.5+ required.
|
|
|
|
|
2015-02-09 04:55:14 +00:00
|
|
|
./build.sh
|
|
|
|
|
|
|
|
## Running
|
|
|
|
|
2015-02-21 07:47:18 +00:00
|
|
|
KVM, VirtualBox, and VMware all supported (Clouds and Vagrant coming soon). Just
|
2015-02-21 08:08:42 +00:00
|
|
|
boot from the `rancheros.iso` (probably want to run with at least 1G of memory) from the [releases](https://github.com/rancherlabs/os/releases) page.
|
2015-02-21 07:47:18 +00:00
|
|
|
|
|
|
|
## Logging in
|
|
|
|
|
2015-02-21 07:52:46 +00:00
|
|
|
Log in with **rancher/rancher** and use `sudo` to get root access.
|
2015-02-21 07:47:18 +00:00
|
|
|
|
|
|
|
Once cloud-init integration is finished we will not need to hard code the
|
|
|
|
password anymore.
|
|
|
|
|
|
|
|
## Persisting State
|
|
|
|
|
|
|
|
Create a partition with the label `RANCHER_STATE`, for example
|
|
|
|
|
|
|
|
mkfs.ext4 -L RANCHER_STATE /dev/sda
|
|
|
|
|
|
|
|
## Configuring
|
|
|
|
|
|
|
|
The entire state of RancherOS is controlled by a single configuration document.
|
|
|
|
You can edit the configuration with the `rancherctl config` command.
|
2015-02-09 04:55:14 +00:00
|
|
|
|
|
|
|
## Commands
|
|
|
|
|
2015-02-09 05:10:58 +00:00
|
|
|
`docker` -- Good old Docker, use that to run stuff.
|
|
|
|
|
2015-02-21 07:47:18 +00:00
|
|
|
`system-docker` -- The docker instance running the system containers. Must run as root
|
|
|
|
|
|
|
|
`rancherctl` -- Control and configure RancherOS
|
|
|
|
|
|
|
|
## How does this work
|
|
|
|
|
|
|
|
Everything in RancherOS is a Docker container. We accomplish this by launching two instances of
|
|
|
|
Docker. One is what we call the system Docker which runs as PID 1. System Docker then launches
|
2015-02-21 07:52:46 +00:00
|
|
|
a container that runs the user Docker. The user Docker is then the instance that gets primarilry
|
|
|
|
used to create containers. We created this separation because it seemed logical and also
|
|
|
|
it would really be bad if somebody did `docker rm -f $(docker ps -qa)` and deleted the entire OS.
|
2015-02-21 07:47:18 +00:00
|
|
|
|
2015-02-21 07:52:46 +00:00
|
|
|

|