mirror of
https://github.com/rancher/os.git
synced 2025-07-14 23:39:03 +00:00
Updated to point to Docs website
This commit is contained in:
parent
2bbf838fea
commit
ae302d017d
136
README.md
136
README.md
@ -34,143 +34,13 @@ us-east-1| PV | [ami-5a321d32](https://console.aws.amazon.com/ec2/home?region=us
|
||||
us-west-1| PV | [ami-bfa849fb](https://console.aws.amazon.com/ec2/home?region=us-west-1#launchAmi=ami-bfa849fb)
|
||||
us-west-2| PV | [ami-a9bc9099](https://console.aws.amazon.com/ec2/home?region=us-west-2#launchAmi=ami-a9bc9099)
|
||||
|
||||
SSH keys are added to the **`rancher`** user.
|
||||
SSH keys are added to the **`rancher`** user, so you must log in using the **rancher** user.
|
||||
|
||||
|
||||
## Running
|
||||
## Documentation for Rancher Labs
|
||||
|
||||
### Cloud
|
||||
Please refer to our [website](http://rancherio.github.io/os/) to read all about RancherOS. It has detailed information on how it works, getting-started and other details.
|
||||
|
||||
Currently we only have RancherOS available in EC2 but more clouds will come based on demand. Follow the links in the Release section above to deploy using our AMIs.
|
||||
|
||||
### Vagrant
|
||||
|
||||
Vagrant is the simplest way to try out RancherOS from the desktop. Refer to the [RancherOS Vagrant project](https://github.com/rancherio/os-vagrant)
|
||||
|
||||
### Other
|
||||
|
||||
QEMU, VirtualBox, and VMware are all supported. Just
|
||||
boot from the `rancheros.iso` with at least 1GB of memory.
|
||||
|
||||
## Logging in
|
||||
|
||||
If you are using EC2 or Vagrant then SSH keys are properly put into place. This means `ssh -i <KEY> -l rancher <IP>` for EC2 and `vagrant ssh` for Vagrant.
|
||||
|
||||
If you boot with the ISO the login is hard coded to **rancher/rancher**. Only the ISO has the password hard coded. If you run from a cloud or install to disk, SSH keys or a password of your choice is expected to be used.
|
||||
|
||||
## Persisting State
|
||||
|
||||
If you are running from the ISO RancherOS will be running from memory. In order to persist to disk you need to format a file system with the label `RANCHER_STATE`. For example
|
||||
|
||||
docker run --privileged -it debian mkfs.ext4 -L RANCHER_STATE /dev/sda
|
||||
|
||||
## Installing to Disk
|
||||
|
||||
To install RancherOS on a new disk you can now use the `rancheros-install` command.
|
||||
|
||||
For non-ec2 installs, before getting started create a cloud-init file that will provide your initial ssh keys. At a minimum something like:
|
||||
|
||||
```
|
||||
#cloud-config
|
||||
ssh_authorized_keys:
|
||||
- ssh-rsa AAA... user@rancher
|
||||
```
|
||||
|
||||
See section below for current supported cloud-init functionality.
|
||||
|
||||
The command arguments are as follows:
|
||||
|
||||
```
|
||||
Usage:
|
||||
rancheros-install [options]
|
||||
Options:
|
||||
-c cloud-config file
|
||||
needed for SSH keys.
|
||||
-d device
|
||||
-f [ DANGEROUS! Data loss can happen ] partition/format without prompting
|
||||
-t install-type:
|
||||
generic
|
||||
amazon-ebs
|
||||
-v os-installer version.
|
||||
-h print this
|
||||
```
|
||||
|
||||
This command orchestrates installation from the rancher/os container.
|
||||
|
||||
####Examples:
|
||||
Virtualbox installation:
|
||||
|
||||
`sudo rancheros-install -d /dev/sda -c ./cloud_data.yml -v v0.1.1 -t generic`
|
||||
|
||||
## Configuring
|
||||
|
||||
The entire state of RancherOS is controlled by a single configuration document. Please refer
|
||||
to the [full documentation](docs/config.md).
|
||||
|
||||
## Cloud Init
|
||||
|
||||
We currently support a very small portion of cloud-init. If the user_data is a script (starting with the proper #!<interpreter>) we will execute it. If the user_data starts with `#cloud-config` it will be processed by cloud-init. The below directives are supported. Using the `rancher` key you can also configure anything found in [`rancher.yml`](docs/config.md).
|
||||
|
||||
```yaml
|
||||
#cloud-config
|
||||
|
||||
ssh_authorized_keys:
|
||||
- ssh-rsa AAA... darren@rancher
|
||||
|
||||
write_files:
|
||||
write_files:
|
||||
- path: /opt/rancher/bin/start.sh
|
||||
permissions: 0755
|
||||
owner: root
|
||||
content: |
|
||||
#!/bin/bash
|
||||
echo "I'm doing things on start"
|
||||
|
||||
# Anything you can put in the rancher.yml
|
||||
rancher:
|
||||
network:
|
||||
dns:
|
||||
nameservers
|
||||
- 8.8.8.8
|
||||
- 8.8.4.4
|
||||
|
||||
```
|
||||
|
||||
## Useful Commands
|
||||
|
||||
Command | Description
|
||||
--------|------------
|
||||
`docker` | Good old Docker, use that to run stuff.
|
||||
`system-docker` | The docker instance running the system containers. Must run as root or using `sudo`
|
||||
`rancherctl` | Control and configure RancherOS
|
||||
|
||||
## Customizing the console
|
||||
|
||||
Since RancherOS is so small the default console is based off of Busybox. This it not always the best experience. The intention with RancherOS is to allow you to swap out different consoles with something like Ubuntu, Fedora, or CentOS. Currently we have Ubuntu configured but we will add more. To enable the Ubuntu console do the following.
|
||||
|
||||
sudo rancherctl addon enable ubuntu-console
|
||||
|
||||
Run the above but with `disable` to turn it off. Currently you have to reboot the system to enable the new console. In the future it will be dynamic and just require you to log out and back in.
|
||||
|
||||
### Console is ephemeral
|
||||
|
||||
The console (and all system containers) are ephemeral. This means on each reboot of the system all changes to the console are lost. Any changes in `/home` or `/opt` will be persisted though. Additionally, on startup of the console container, if `/opt/rancher/bin/start.sh` exists, it will be executed. You can add anything to that script to configure your console the way you want it.
|
||||
|
||||
In the future we will allow one to provide a custom image for the console container, but we just haven't gotten around yet to enabling that.
|
||||
|
||||
## Building
|
||||
|
||||
Docker 1.5+ required.
|
||||
|
||||
./build.sh
|
||||
|
||||
When the build is done the ISO should be in `dist/artifacts`
|
||||
|
||||
## Developing
|
||||
|
||||
Development is easiest done with QEMU on Linux. If you aren't running Linux natively then we recommend you run VMware Fusion/Workstation and enable VT-x support. Then, QEMU (with KVM support) will run sufficiently fast inside a Linux VM.
|
||||
|
||||
First run `./build.sh` to create the initial bootstrap Docker images. After that if you make changes to the go code only run `./scripts/build`. To launch RancherOS in QEMU from your dev version run `./scripts/run`. You can SSH in using `ssh -l rancher -p 2222 localhost`. Your SSH keys should have been populated so you won't need a password. If you don't have SSH keys then the password is "rancher".
|
||||
|
||||
#License
|
||||
Copyright (c) 2014-2015 [Rancher Labs, Inc.](http://rancher.com)
|
||||
|
Loading…
Reference in New Issue
Block a user