Merge https://github.com/rancher/os into HEAD
@ -1,15 +1,6 @@
|
||||
FROM ubuntu:16.04
|
||||
# FROM arm64=aarch64/ubuntu:16.04 arm=armhf/ubuntu:16.04
|
||||
|
||||
ENV DAPPER_ENV VERSION DEV_BUILD
|
||||
ENV DAPPER_DOCKER_SOCKET true
|
||||
ENV DAPPER_SOURCE /go/src/github.com/rancher/os
|
||||
ENV DAPPER_OUTPUT ./bin ./dist ./build/initrd
|
||||
ENV DAPPER_RUN_ARGS --privileged
|
||||
ENV TRASH_CACHE ${DAPPER_SOURCE}/.trash-cache
|
||||
ENV SHELL /bin/bash
|
||||
WORKDIR ${DAPPER_SOURCE}
|
||||
|
||||
RUN apt-get update && \
|
||||
apt-get install -y --no-install-recommends \
|
||||
build-essential \
|
||||
@ -38,6 +29,17 @@ RUN apt-get update && \
|
||||
wget \
|
||||
xorriso
|
||||
|
||||
########## Dapper Configuration #####################
|
||||
|
||||
ENV DAPPER_ENV VERSION DEV_BUILD RUNTEST
|
||||
ENV DAPPER_DOCKER_SOCKET true
|
||||
ENV DAPPER_SOURCE /go/src/github.com/rancher/os
|
||||
ENV DAPPER_OUTPUT ./bin ./dist ./build/initrd
|
||||
ENV DAPPER_RUN_ARGS --privileged
|
||||
ENV TRASH_CACHE ${DAPPER_SOURCE}/.trash-cache
|
||||
ENV SHELL /bin/bash
|
||||
WORKDIR ${DAPPER_SOURCE}
|
||||
|
||||
########## General Configuration #####################
|
||||
ARG DAPPER_HOST_ARCH=amd64
|
||||
ARG HOST_ARCH=${DAPPER_HOST_ARCH}
|
||||
@ -53,7 +55,7 @@ ARG DOCKER_BUILD_VERSION=1.10.3
|
||||
ARG DOCKER_BUILD_PATCH_VERSION=v${DOCKER_BUILD_VERSION}-ros1
|
||||
ARG SELINUX_POLICY_URL=https://github.com/rancher/refpolicy/releases/download/v0.0.3/policy.29
|
||||
|
||||
ARG KERNEL_URL_amd64=https://github.com/rancher/os-kernel/releases/download/Ubuntu-4.4.0-42.62-rancher1-1/linux-4.4.21-rancher-x86.tar.gz
|
||||
ARG KERNEL_URL_amd64=https://github.com/rancher/os-kernel/releases/download/v4.8.11/linux-4.8.11-rancher-x86.tar.gz
|
||||
ARG KERNEL_URL_arm64=https://github.com/imikushin/os-kernel/releases/download/Estuary-4.4.0-arm64.8/linux-4.4.0-rancher-arm64.tar.gz
|
||||
|
||||
ARG DOCKER_URL_amd64=https://get.docker.com/builds/Linux/x86_64/docker-${DOCKER_VERSION}.tgz
|
||||
@ -70,9 +72,9 @@ ARG OS_SERVICES_REPO=https://raw.githubusercontent.com/${OS_REPO}/os-services
|
||||
ARG IMAGE_NAME=${OS_REPO}/os
|
||||
ARG DFS_IMAGE=${OS_REPO}/docker:v${DOCKER_VERSION}-2
|
||||
|
||||
ARG OS_BASE_URL_amd64=https://github.com/rancher/os-base/releases/download/v2016.08.1-1/os-base_amd64.tar.xz
|
||||
ARG OS_BASE_URL_arm64=https://github.com/rancher/os-base/releases/download/v2016.08.1-1/os-base_arm64.tar.xz
|
||||
ARG OS_BASE_URL_arm=https://github.com/rancher/os-base/releases/download/v2016.08.1-1/os-base_arm.tar.xz
|
||||
ARG OS_BASE_URL_amd64=https://github.com/rancher/os-base/releases/download/v2016.08.1-2/os-base_amd64.tar.xz
|
||||
ARG OS_BASE_URL_arm64=https://github.com/rancher/os-base/releases/download/v2016.08.1-2/os-base_arm64.tar.xz
|
||||
ARG OS_BASE_URL_arm=https://github.com/rancher/os-base/releases/download/v2016.08.1-2/os-base_arm.tar.xz
|
||||
######################################################
|
||||
|
||||
# Set up environment and export all ARGS as ENV
|
||||
@ -140,6 +142,9 @@ RUN curl -fL ${!BUILD_DOCKER_URL} > /usr/bin/docker && \
|
||||
# Install Trash
|
||||
RUN go get github.com/rancher/trash
|
||||
|
||||
# Install golint
|
||||
RUN go get github.com/golang/lint/golint
|
||||
|
||||
RUN go get gopkg.in/check.v1
|
||||
|
||||
# Install dapper
|
||||
|
7
Makefile
@ -1,8 +1,8 @@
|
||||
TARGETS := $(shell ls scripts | grep -vE 'clean|run|help')
|
||||
TARGETS := $(shell ls scripts | grep -vE 'clean|run|help|docs')
|
||||
|
||||
.dapper:
|
||||
@echo Downloading dapper
|
||||
@curl -sL https://releases.rancher.com/dapper/latest/dapper-`uname -s`-`uname -m` > .dapper.tmp
|
||||
@curl -sL https://releases.rancher.com/dapper/latest/dapper-`uname -s`-`uname -m|sed 's/v7l//'` > .dapper.tmp
|
||||
@@chmod +x .dapper.tmp
|
||||
@./.dapper.tmp -v
|
||||
@mv .dapper.tmp .dapper
|
||||
@ -25,6 +25,9 @@ run: build/initrd/.id .dapper
|
||||
./.dapper -m bind build-target
|
||||
./scripts/run
|
||||
|
||||
docs:
|
||||
./scripts/docs
|
||||
|
||||
shell-bind: .dapper
|
||||
./.dapper -m bind -s
|
||||
|
||||
|
72
README.md
@ -14,40 +14,48 @@ it would really be bad if somebody did `docker rm -f $(docker ps -qa)` and delet
|
||||
|
||||
## Latest Release
|
||||
|
||||
**v0.6.1 - Docker 1.12.1 - Linux 4.4.19**
|
||||
**v0.7.1 - Docker 1.12.3 - Linux 4.4.24**
|
||||
|
||||
### ISO
|
||||
|
||||
https://releases.rancher.com/os/latest/rancheros.iso
|
||||
https://releases.rancher.com/os/v0.6.1/rancheros.iso
|
||||
https://releases.rancher.com/os/v0.7.1/rancheros.iso
|
||||
|
||||
### Additional Downloads
|
||||
|
||||
#### Latest
|
||||
#### Latest Links
|
||||
|
||||
##### v0.7.1
|
||||
* https://releases.rancher.com/os/latest/initrd
|
||||
* https://releases.rancher.com/os/latest/iso-checksums.txt
|
||||
* https://releases.rancher.com/os/latest/rancheros-openstack.img
|
||||
* https://releases.rancher.com/os/latest/rancheros-raspberry-pi.zip
|
||||
* https://releases.rancher.com/os/latest/rancheros-v0.6.1.tar.gz
|
||||
* https://releases.rancher.com/os/latest/rancheros.iso
|
||||
* https://releases.rancher.com/os/latest/rootfs_arm.tar.gz
|
||||
* https://releases.rancher.com/os/latest/rootfs_arm64.tar.gz
|
||||
* https://releases.rancher.com/os/latest/rancheros-v0.7.1.tar.gz
|
||||
* https://releases.rancher.com/os/latest/rootfs.tar.gz
|
||||
* https://releases.rancher.com/os/latest/vmlinuz
|
||||
|
||||
#### v0.6.1
|
||||
##### v0.7.0
|
||||
|
||||
* https://releases.rancher.com/os/v0.6.1/initrd
|
||||
* https://releases.rancher.com/os/v0.6.1/iso-checksums.txt
|
||||
* https://releases.rancher.com/os/v0.6.1/rancheros-openstack.img
|
||||
* https://releases.rancher.com/os/v0.6.1/rancheros-raspberry-pi.zip
|
||||
* https://releases.rancher.com/os/v0.6.1/rancheros-v0.6.1.tar.gz
|
||||
* https://releases.rancher.com/os/v0.6.1/rancheros.iso
|
||||
* https://releases.rancher.com/os/v0.6.1/rootfs_arm.tar.gz
|
||||
* https://releases.rancher.com/os/v0.6.1/rootfs_arm64.tar.gz
|
||||
* https://releases.rancher.com/os/v0.6.1/rootfs.tar.gz
|
||||
* https://releases.rancher.com/os/v0.6.1/vmlinuz
|
||||
|
||||
* https://releases.rancher.com/os/latest/rancheros-raspberry-pi.zip
|
||||
* https://releases.rancher.com/os/latest/rootfs_arm.tar.gz
|
||||
* https://releases.rancher.com/os/latest/rootfs_arm64.tar.gz
|
||||
|
||||
#### v0.7.1 Links
|
||||
|
||||
* https://releases.rancher.com/os/v0.7.1/initrd
|
||||
* https://releases.rancher.com/os/v0.7.1/iso-checksums.txt
|
||||
* https://releases.rancher.com/os/v0.7.1/rancheros-openstack.img
|
||||
* https://releases.rancher.com/os/v0.7.1/rancheros.iso
|
||||
* https://releases.rancher.com/os/v0.7.1/rancheros-v0.7.1.tar.gz
|
||||
* https://releases.rancher.com/os/v0.7.1/rootfs.tar.gz
|
||||
* https://releases.rancher.com/os/v0.7.1/vmlinuz
|
||||
|
||||
#### v0.7.0 Links
|
||||
|
||||
* https://releases.rancher.com/os/v0.7.0/rancheros-raspberry-pi.zip
|
||||
* https://releases.rancher.com/os/v0.7.0/rootfs_arm.tar.gz
|
||||
* https://releases.rancher.com/os/v0.7.0/rootfs_arm64.tar.gz
|
||||
|
||||
**Note**: you can use `http` instead of `https` in the above URLs, e.g. for iPXE.
|
||||
|
||||
@ -59,22 +67,24 @@ SSH keys are added to the **`rancher`** user, so you must log in using the **ran
|
||||
|
||||
Region | Type | AMI |
|
||||
-------|------|------
|
||||
ap-northeast-1 | HVM | [ami-75954214](https://console.aws.amazon.com/ec2/home?region=ap-northeast-1#launchInstanceWizard:ami=ami-75954214)
|
||||
ap-northeast-2 | HVM | [ami-690dd807](https://console.aws.amazon.com/ec2/home?region=ap-northeast-2#launchInstanceWizard:ami=ami-690dd807)
|
||||
ap-south-1 | HVM | [ami-ed8cf982](https://console.aws.amazon.com/ec2/home?region=ap-south-1#launchInstanceWizard:ami=ami-ed8cf982)
|
||||
ap-southeast-1 | HVM | [ami-27bc6644](https://console.aws.amazon.com/ec2/home?region=ap-southeast-1#launchInstanceWizard:ami=ami-27bc6644)
|
||||
ap-southeast-2 | HVM | [ami-67172604](https://console.aws.amazon.com/ec2/home?region=ap-southeast-2#launchInstanceWizard:ami=ami-67172604)
|
||||
eu-central-1 | HVM | [ami-e88d7f87](https://console.aws.amazon.com/ec2/home?region=eu-central-1#launchInstanceWizard:ami=ami-e88d7f87)
|
||||
eu-west-1 | HVM | [ami-934837e0](https://console.aws.amazon.com/ec2/home?region=eu-west-1#launchInstanceWizard:ami=ami-934837e0)
|
||||
sa-east-1 | HVM | [ami-6949d905](https://console.aws.amazon.com/ec2/home?region=sa-east-1#launchInstanceWizard:ami=ami-6949d905)
|
||||
us-east-1 | HVM | [ami-a8d2a4bf](https://console.aws.amazon.com/ec2/home?region=us-east-1#launchInstanceWizard:ami=ami-a8d2a4bf)
|
||||
us-west-1 | HVM | [ami-fccb879c](https://console.aws.amazon.com/ec2/home?region=us-west-1#launchInstanceWizard:ami=ami-fccb879c)
|
||||
us-west-2 | HVM | [ami-1ed3007e](https://console.aws.amazon.com/ec2/home?region=us-west-2#launchInstanceWizard:ami=ami-1ed3007e)
|
||||
ap-northeast-1 | HVM | [ami-be5bf2df](https://console.aws.amazon.com/ec2/home?region=ap-northeast-1#launchInstanceWizard:ami=ami-be5bf2df)
|
||||
ap-northeast-2 | HVM | [ami-247fab4a](https://console.aws.amazon.com/ec2/home?region=ap-northeast-2#launchInstanceWizard:ami=ami-247fab4a)
|
||||
ap-south-1 | HVM | [ami-dbf682b4](https://console.aws.amazon.com/ec2/home?region=ap-south-1#launchInstanceWizard:ami=ami-dbf682b4)
|
||||
ap-southeast-1 | HVM | [ami-c6d073a5](https://console.aws.amazon.com/ec2/home?region=ap-southeast-1#launchInstanceWizard:ami=ami-c6d073a5)
|
||||
ap-southeast-2 | HVM | [ami-51132c32](https://console.aws.amazon.com/ec2/home?region=ap-southeast-2#launchInstanceWizard:ami=ami-51132c32)
|
||||
eu-central-1 | HVM | [ami-2025df4f](https://console.aws.amazon.com/ec2/home?region=eu-central-1#launchInstanceWizard:ami=ami-2025df4f)
|
||||
eu-west-1 | HVM | [ami-c62170b5](https://console.aws.amazon.com/ec2/home?region=eu-west-1#launchInstanceWizard:ami=ami-c62170b5)
|
||||
sa-east-1 | HVM | [ami-52b8273e](https://console.aws.amazon.com/ec2/home?region=sa-east-1#launchInstanceWizard:ami=ami-52b8273e)
|
||||
us-east-1 | HVM | [ami-dfdff3c8](https://console.aws.amazon.com/ec2/home?region=us-east-1#launchInstanceWizard:ami=ami-dfdff3c8)
|
||||
us-east-2 | HVM | [ami-674c1602](https://console.aws.amazon.com/ec2/home?region=us-east-2#launchInstanceWizard:ami=ami-674c1602)
|
||||
us-west-1 | HVM | [ami-da2075ba](https://console.aws.amazon.com/ec2/home?region=us-west-1#launchInstanceWizard:ami=ami-da2075ba)
|
||||
us-west-2 | HVM | [ami-ab3192cb](https://console.aws.amazon.com/ec2/home?region=us-west-2#launchInstanceWizard:ami=ami-ab3192cb)
|
||||
|
||||
### Google Compute Engine
|
||||
|
||||
We are providing a disk image that users can download and import for use in Google Compute Engine. The image can be obtained from the release artifacts for RancherOS.
|
||||
|
||||
[Download Image](https://github.com/rancher/os/releases/download/v0.6.1/rancheros-v0.6.1.tar.gz)
|
||||
[Download Image](https://github.com/rancher/os/releases/download/v0.7.1/rancheros-v0.7.1.tar.gz)
|
||||
|
||||
Please follow the directions at our [docs to launch in GCE](http://docs.rancher.com/os/running-rancheros/cloud/gce/).
|
||||
|
||||
@ -85,6 +95,8 @@ Please refer to our [RancherOS Documentation](http://docs.rancher.com/os/) websi
|
||||
## Support, Discussion, and Community
|
||||
If you need any help with RancherOS or Rancher, please join us at either our [Rancher forums](http://forums.rancher.com) or [#rancher IRC channel](http://webchat.freenode.net/?channels=rancher) where most of our team hangs out at.
|
||||
|
||||
For issues relating to security, please email security@rancher.com instead of posting an open issue in Github.
|
||||
|
||||
Please submit any **RancherOS** bugs, issues, and feature requests to [rancher/os](//github.com/rancher/os/issues).
|
||||
|
||||
Please submit any **Rancher** bugs, issues, and feature requests to [rancher/rancher](//github.com/rancher/rancher/issues).
|
||||
|
@ -1,20 +1,108 @@
|
||||
package cloudinitexecute
|
||||
|
||||
import (
|
||||
"io/ioutil"
|
||||
"os"
|
||||
"os/exec"
|
||||
"path"
|
||||
"strconv"
|
||||
"strings"
|
||||
|
||||
log "github.com/Sirupsen/logrus"
|
||||
"github.com/rancher/os/log"
|
||||
"github.com/rancher/os/util"
|
||||
)
|
||||
|
||||
func authorizeSSHKeys(user string, authorizedKeys []string, name string) {
|
||||
for _, authorizedKey := range authorizedKeys {
|
||||
cmd := exec.Command("update-ssh-keys", user, authorizedKey)
|
||||
cmd.Stdout = os.Stdout
|
||||
cmd.Stderr = os.Stderr
|
||||
err := cmd.Run()
|
||||
const (
|
||||
sshDirName = ".ssh"
|
||||
authorizedKeysFileName = "authorized_keys"
|
||||
)
|
||||
|
||||
func authorizeSSHKeys(username string, authorizedKeys []string, name string) error {
|
||||
var uid int
|
||||
var gid int
|
||||
var homeDir string
|
||||
|
||||
bytes, err := ioutil.ReadFile("/etc/passwd")
|
||||
if err != nil {
|
||||
log.WithFields(log.Fields{"err": err, "user": user, "auth_key": authorizedKey}).Error("Error updating SSH authorized_keys")
|
||||
return err
|
||||
}
|
||||
|
||||
for _, line := range strings.Split(string(bytes), "\n") {
|
||||
if strings.HasPrefix(line, username) {
|
||||
split := strings.Split(line, ":")
|
||||
if len(split) < 6 {
|
||||
break
|
||||
}
|
||||
uid, err = strconv.Atoi(split[2])
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
gid, err = strconv.Atoi(split[3])
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
homeDir = split[5]
|
||||
}
|
||||
}
|
||||
|
||||
sshDir := path.Join(homeDir, sshDirName)
|
||||
authorizedKeysFile := path.Join(sshDir, authorizedKeysFileName)
|
||||
|
||||
if _, err := os.Stat(sshDir); os.IsNotExist(err) {
|
||||
if err = os.Mkdir(sshDir, 0700); err != nil {
|
||||
return err
|
||||
}
|
||||
} else if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if err = os.Chown(sshDir, uid, gid); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
for _, authorizedKey := range authorizedKeys {
|
||||
if err = authorizeSSHKey(authorizedKey, authorizedKeysFile, uid, gid); err != nil {
|
||||
log.Errorf("Failed to authorize SSH key %s: %v", authorizedKey, err)
|
||||
}
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func authorizeSSHKey(authorizedKey, authorizedKeysFile string, uid, gid int) error {
|
||||
authorizedKeysFileInfo, err := os.Stat(authorizedKeysFile)
|
||||
if os.IsNotExist(err) {
|
||||
keysFile, err := os.Create(authorizedKeysFile)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = keysFile.Chmod(0600); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = keysFile.Close(); err != nil {
|
||||
return err
|
||||
}
|
||||
authorizedKeysFileInfo, err = os.Stat(authorizedKeysFile)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
} else if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
bytes, err := ioutil.ReadFile(authorizedKeysFile)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if !strings.Contains(string(bytes), authorizedKey) {
|
||||
bytes = append(bytes, []byte(authorizedKey)...)
|
||||
bytes = append(bytes, '\n')
|
||||
}
|
||||
|
||||
perm := authorizedKeysFileInfo.Mode().Perm()
|
||||
if err = util.WriteFileAtomic(authorizedKeysFile, bytes, perm); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
return os.Chown(authorizedKeysFile, uid, gid)
|
||||
}
|
||||
|
@ -9,10 +9,10 @@ import (
|
||||
"path"
|
||||
"strings"
|
||||
|
||||
log "github.com/Sirupsen/logrus"
|
||||
"github.com/coreos/coreos-cloudinit/system"
|
||||
rancherConfig "github.com/rancher/os/config"
|
||||
"github.com/rancher/os/docker"
|
||||
"github.com/rancher/os/log"
|
||||
"github.com/rancher/os/util"
|
||||
"golang.org/x/net/context"
|
||||
)
|
||||
@ -37,6 +37,7 @@ func init() {
|
||||
func Main() {
|
||||
flags.Parse(os.Args[1:])
|
||||
|
||||
log.InitLogger()
|
||||
log.Infof("Running cloud-init-execute: pre-console=%v, console=%v", preConsole, console)
|
||||
|
||||
cfg := rancherConfig.LoadConfig()
|
||||
@ -56,8 +57,12 @@ func Main() {
|
||||
|
||||
func ApplyConsole(cfg *rancherConfig.CloudConfig) {
|
||||
if len(cfg.SSHAuthorizedKeys) > 0 {
|
||||
authorizeSSHKeys("rancher", cfg.SSHAuthorizedKeys, sshKeyName)
|
||||
authorizeSSHKeys("docker", cfg.SSHAuthorizedKeys, sshKeyName)
|
||||
if err := authorizeSSHKeys("rancher", cfg.SSHAuthorizedKeys, sshKeyName); err != nil {
|
||||
log.Error(err)
|
||||
}
|
||||
if err := authorizeSSHKeys("docker", cfg.SSHAuthorizedKeys, sshKeyName); err != nil {
|
||||
log.Error(err)
|
||||
}
|
||||
}
|
||||
|
||||
WriteFiles(cfg, "console")
|
||||
@ -94,18 +99,7 @@ func ApplyConsole(cfg *rancherConfig.CloudConfig) {
|
||||
}
|
||||
}
|
||||
|
||||
for _, runcmd := range cfg.Runcmd {
|
||||
if len(runcmd) == 0 {
|
||||
continue
|
||||
}
|
||||
|
||||
cmd := exec.Command(runcmd[0], runcmd[1:]...)
|
||||
cmd.Stdout = os.Stdout
|
||||
cmd.Stderr = os.Stderr
|
||||
if err := cmd.Run(); err != nil {
|
||||
log.Errorf("Failed to run %s: %v", runcmd, err)
|
||||
}
|
||||
}
|
||||
util.RunCommandSequence(cfg.Runcmd)
|
||||
}
|
||||
|
||||
func WriteFiles(cfg *rancherConfig.CloudConfig, container string) {
|
||||
|
@ -17,15 +17,14 @@ package cloudinitsave
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"flag"
|
||||
"os"
|
||||
"strings"
|
||||
"sync"
|
||||
"syscall"
|
||||
"time"
|
||||
|
||||
yaml "github.com/cloudfoundry-incubator/candiedyaml"
|
||||
|
||||
log "github.com/Sirupsen/logrus"
|
||||
"github.com/coreos/coreos-cloudinit/config"
|
||||
"github.com/coreos/coreos-cloudinit/datasource"
|
||||
"github.com/coreos/coreos-cloudinit/datasource/configdrive"
|
||||
@ -36,9 +35,12 @@ import (
|
||||
"github.com/coreos/coreos-cloudinit/datasource/proc_cmdline"
|
||||
"github.com/coreos/coreos-cloudinit/datasource/url"
|
||||
"github.com/coreos/coreos-cloudinit/pkg"
|
||||
"github.com/rancher/netconf"
|
||||
"github.com/docker/docker/pkg/mount"
|
||||
"github.com/rancher/os/cmd/cloudinitsave/gce"
|
||||
"github.com/rancher/os/cmd/network"
|
||||
rancherConfig "github.com/rancher/os/config"
|
||||
"github.com/rancher/os/log"
|
||||
"github.com/rancher/os/netconf"
|
||||
"github.com/rancher/os/util"
|
||||
)
|
||||
|
||||
@ -46,73 +48,43 @@ const (
|
||||
datasourceInterval = 100 * time.Millisecond
|
||||
datasourceMaxInterval = 30 * time.Second
|
||||
datasourceTimeout = 5 * time.Minute
|
||||
configDevName = "config-2"
|
||||
configDev = "LABEL=" + configDevName
|
||||
configDevMountPoint = "/media/config-2"
|
||||
)
|
||||
|
||||
var (
|
||||
network bool
|
||||
flags *flag.FlagSet
|
||||
)
|
||||
|
||||
func init() {
|
||||
flags = flag.NewFlagSet(os.Args[0], flag.ContinueOnError)
|
||||
flags.BoolVar(&network, "network", true, "use network based datasources")
|
||||
}
|
||||
|
||||
func Main() {
|
||||
flags.Parse(os.Args[1:])
|
||||
log.InitLogger()
|
||||
log.Info("Running cloud-init-save")
|
||||
|
||||
log.Infof("Running cloud-init-save: network=%v", network)
|
||||
cfg := rancherConfig.LoadConfig()
|
||||
network.ApplyNetworkConfig(cfg)
|
||||
|
||||
if err := saveCloudConfig(); err != nil {
|
||||
if err := SaveCloudConfig(true); err != nil {
|
||||
log.Errorf("Failed to save cloud-config: %v", err)
|
||||
}
|
||||
}
|
||||
|
||||
func saveFiles(cloudConfigBytes, scriptBytes []byte, metadata datasource.Metadata) error {
|
||||
os.MkdirAll(rancherConfig.CloudConfigDir, os.ModeDir|0600)
|
||||
|
||||
if len(scriptBytes) > 0 {
|
||||
log.Infof("Writing to %s", rancherConfig.CloudConfigScriptFile)
|
||||
if err := util.WriteFileAtomic(rancherConfig.CloudConfigScriptFile, scriptBytes, 500); err != nil {
|
||||
log.Errorf("Error while writing file %s: %v", rancherConfig.CloudConfigScriptFile, err)
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
if len(cloudConfigBytes) > 0 {
|
||||
if err := util.WriteFileAtomic(rancherConfig.CloudConfigBootFile, cloudConfigBytes, 400); err != nil {
|
||||
return err
|
||||
}
|
||||
log.Infof("Written to %s:\n%s", rancherConfig.CloudConfigBootFile, string(cloudConfigBytes))
|
||||
}
|
||||
|
||||
metaDataBytes, err := yaml.Marshal(metadata)
|
||||
if err != nil {
|
||||
func MountConfigDrive() error {
|
||||
if err := os.MkdirAll(configDevMountPoint, 644); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if err = util.WriteFileAtomic(rancherConfig.MetaDataFile, metaDataBytes, 400); err != nil {
|
||||
return err
|
||||
}
|
||||
log.Infof("Written to %s:\n%s", rancherConfig.MetaDataFile, string(metaDataBytes))
|
||||
configDev := util.ResolveDevice(configDev)
|
||||
|
||||
return nil
|
||||
if configDev == "" {
|
||||
return mount.Mount(configDevName, configDevMountPoint, "9p", "trans=virtio,version=9p2000.L")
|
||||
}
|
||||
|
||||
return mount.Mount(configDev, configDevMountPoint, "iso9660,vfat", "")
|
||||
}
|
||||
|
||||
func currentDatasource() (datasource.Datasource, error) {
|
||||
cfg := rancherConfig.LoadConfig()
|
||||
|
||||
dss := getDatasources(cfg)
|
||||
if len(dss) == 0 {
|
||||
return nil, nil
|
||||
}
|
||||
|
||||
ds := selectDatasource(dss)
|
||||
return ds, nil
|
||||
func UnmountConfigDrive() error {
|
||||
return syscall.Unmount(configDevMountPoint, 0)
|
||||
}
|
||||
|
||||
func saveCloudConfig() error {
|
||||
userDataBytes, metadata, err := fetchUserData()
|
||||
func SaveCloudConfig(network bool) error {
|
||||
userDataBytes, metadata, err := fetchUserData(network)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
@ -146,9 +118,67 @@ func saveCloudConfig() error {
|
||||
return saveFiles(userDataBytes, scriptBytes, metadata)
|
||||
}
|
||||
|
||||
func fetchUserData() ([]byte, datasource.Metadata, error) {
|
||||
func RequiresNetwork(datasource string) bool {
|
||||
parts := strings.SplitN(datasource, ":", 2)
|
||||
requiresNetwork, ok := map[string]bool{
|
||||
"ec2": true,
|
||||
"file": false,
|
||||
"url": true,
|
||||
"cmdline": true,
|
||||
"configdrive": false,
|
||||
"digitalocean": true,
|
||||
"gce": true,
|
||||
"packet": true,
|
||||
}[parts[0]]
|
||||
return ok && requiresNetwork
|
||||
}
|
||||
|
||||
func saveFiles(cloudConfigBytes, scriptBytes []byte, metadata datasource.Metadata) error {
|
||||
os.MkdirAll(rancherConfig.CloudConfigDir, os.ModeDir|0600)
|
||||
|
||||
if len(scriptBytes) > 0 {
|
||||
log.Infof("Writing to %s", rancherConfig.CloudConfigScriptFile)
|
||||
if err := util.WriteFileAtomic(rancherConfig.CloudConfigScriptFile, scriptBytes, 500); err != nil {
|
||||
log.Errorf("Error while writing file %s: %v", rancherConfig.CloudConfigScriptFile, err)
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
if len(cloudConfigBytes) > 0 {
|
||||
if err := util.WriteFileAtomic(rancherConfig.CloudConfigBootFile, cloudConfigBytes, 400); err != nil {
|
||||
return err
|
||||
}
|
||||
log.Infof("Written to %s:\n%s", rancherConfig.CloudConfigBootFile, string(cloudConfigBytes))
|
||||
}
|
||||
|
||||
metaDataBytes, err := yaml.Marshal(metadata)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if err = util.WriteFileAtomic(rancherConfig.MetaDataFile, metaDataBytes, 400); err != nil {
|
||||
return err
|
||||
}
|
||||
log.Infof("Written to %s:\n%s", rancherConfig.MetaDataFile, string(metaDataBytes))
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func currentDatasource(network bool) (datasource.Datasource, error) {
|
||||
cfg := rancherConfig.LoadConfig()
|
||||
|
||||
dss := getDatasources(cfg, network)
|
||||
if len(dss) == 0 {
|
||||
return nil, nil
|
||||
}
|
||||
|
||||
ds := selectDatasource(dss)
|
||||
return ds, nil
|
||||
}
|
||||
|
||||
func fetchUserData(network bool) ([]byte, datasource.Metadata, error) {
|
||||
var metadata datasource.Metadata
|
||||
ds, err := currentDatasource()
|
||||
ds, err := currentDatasource(network)
|
||||
if err != nil || ds == nil {
|
||||
log.Errorf("Failed to select datasource: %v", err)
|
||||
return nil, metadata, err
|
||||
@ -170,7 +200,7 @@ func fetchUserData() ([]byte, datasource.Metadata, error) {
|
||||
|
||||
// getDatasources creates a slice of possible Datasources for cloudinit based
|
||||
// on the different source command-line flags.
|
||||
func getDatasources(cfg *rancherConfig.CloudConfig) []datasource.Datasource {
|
||||
func getDatasources(cfg *rancherConfig.CloudConfig, network bool) []datasource.Datasource {
|
||||
dss := make([]datasource.Datasource, 0, 5)
|
||||
|
||||
for _, ds := range cfg.Rancher.CloudInit.Datasources {
|
||||
@ -231,8 +261,8 @@ func getDatasources(cfg *rancherConfig.CloudConfig) []datasource.Datasource {
|
||||
}
|
||||
|
||||
func enableDoLinkLocal() {
|
||||
err := netconf.ApplyNetworkConfigs(&netconf.NetworkConfig{
|
||||
Interfaces: map[string]netconf.InterfaceConfig{
|
||||
err := netconf.ApplyNetworkConfigs(&rancherConfig.NetworkConfig{
|
||||
Interfaces: map[string]rancherConfig.InterfaceConfig{
|
||||
"eth0": {
|
||||
IPV4LL: true,
|
||||
},
|
||||
|
@ -31,15 +31,15 @@ const (
|
||||
userdataPath = apiVersion + "instance/attributes/user-data"
|
||||
)
|
||||
|
||||
type metadataService struct {
|
||||
type MetadataService struct {
|
||||
metadata.MetadataService
|
||||
}
|
||||
|
||||
func NewDatasource(root string) *metadataService {
|
||||
return &metadataService{metadata.NewDatasource(root, apiVersion, userdataPath, metadataPath, http.Header{"Metadata-Flavor": {"Google"}})}
|
||||
func NewDatasource(root string) *MetadataService {
|
||||
return &MetadataService{metadata.NewDatasource(root, apiVersion, userdataPath, metadataPath, http.Header{"Metadata-Flavor": {"Google"}})}
|
||||
}
|
||||
|
||||
func (ms metadataService) FetchMetadata() (datasource.Metadata, error) {
|
||||
func (ms MetadataService) FetchMetadata() (datasource.Metadata, error) {
|
||||
public, err := ms.fetchIP("instance/network-interfaces/0/access-configs/0/external-ip")
|
||||
if err != nil {
|
||||
return datasource.Metadata{}, err
|
||||
@ -53,16 +53,16 @@ func (ms metadataService) FetchMetadata() (datasource.Metadata, error) {
|
||||
return datasource.Metadata{}, err
|
||||
}
|
||||
|
||||
projectSshKeys, err := ms.fetchString("project/attributes/sshKeys")
|
||||
projectSSHKeys, err := ms.fetchString("project/attributes/sshKeys")
|
||||
if err != nil {
|
||||
return datasource.Metadata{}, err
|
||||
}
|
||||
instanceSshKeys, err := ms.fetchString("instance/attributes/sshKeys")
|
||||
instanceSSHKeys, err := ms.fetchString("instance/attributes/sshKeys")
|
||||
if err != nil {
|
||||
return datasource.Metadata{}, err
|
||||
}
|
||||
|
||||
keyStrings := strings.Split(projectSshKeys+"\n"+instanceSshKeys, "\n")
|
||||
keyStrings := strings.Split(projectSSHKeys+"\n"+instanceSSHKeys, "\n")
|
||||
|
||||
sshPublicKeys := map[string]string{}
|
||||
i := 0
|
||||
@ -85,11 +85,11 @@ func (ms metadataService) FetchMetadata() (datasource.Metadata, error) {
|
||||
}, nil
|
||||
}
|
||||
|
||||
func (ms metadataService) Type() string {
|
||||
func (ms MetadataService) Type() string {
|
||||
return "gce-metadata-service"
|
||||
}
|
||||
|
||||
func (ms metadataService) fetchString(key string) (string, error) {
|
||||
func (ms MetadataService) fetchString(key string) (string, error) {
|
||||
data, err := ms.FetchData(ms.MetadataUrl() + key)
|
||||
if err != nil {
|
||||
return "", err
|
||||
@ -98,7 +98,7 @@ func (ms metadataService) fetchString(key string) (string, error) {
|
||||
return string(data), nil
|
||||
}
|
||||
|
||||
func (ms metadataService) fetchIP(key string) (net.IP, error) {
|
||||
func (ms MetadataService) fetchIP(key string) (net.IP, error) {
|
||||
str, err := ms.fetchString(key)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@ -110,12 +110,11 @@ func (ms metadataService) fetchIP(key string) (net.IP, error) {
|
||||
|
||||
if ip := net.ParseIP(str); ip != nil {
|
||||
return ip, nil
|
||||
} else {
|
||||
return nil, fmt.Errorf("couldn't parse %q as IP address", str)
|
||||
}
|
||||
return nil, fmt.Errorf("couldn't parse %q as IP address", str)
|
||||
}
|
||||
|
||||
func (ms metadataService) FetchUserdata() ([]byte, error) {
|
||||
func (ms MetadataService) FetchUserdata() ([]byte, error) {
|
||||
data, err := ms.FetchData(ms.UserdataUrl())
|
||||
if err != nil {
|
||||
return nil, err
|
||||
|
@ -8,20 +8,21 @@ import (
|
||||
"path"
|
||||
"strings"
|
||||
|
||||
"github.com/rancher/os/log"
|
||||
|
||||
yaml "github.com/cloudfoundry-incubator/candiedyaml"
|
||||
|
||||
"github.com/Sirupsen/logrus"
|
||||
"github.com/packethost/packngo/metadata"
|
||||
"github.com/rancher/netconf"
|
||||
rancherConfig "github.com/rancher/os/config"
|
||||
"github.com/rancher/os/config"
|
||||
"github.com/rancher/os/netconf"
|
||||
)
|
||||
|
||||
func enablePacketNetwork(cfg *rancherConfig.RancherConfig) {
|
||||
func enablePacketNetwork(cfg *config.RancherConfig) {
|
||||
bootStrapped := false
|
||||
for _, v := range cfg.Network.Interfaces {
|
||||
if v.Address != "" {
|
||||
if err := netconf.ApplyNetworkConfigs(&cfg.Network); err != nil {
|
||||
logrus.Errorf("Failed to bootstrap network: %v", err)
|
||||
log.Errorf("Failed to bootstrap network: %v", err)
|
||||
return
|
||||
}
|
||||
bootStrapped = true
|
||||
@ -36,11 +37,11 @@ func enablePacketNetwork(cfg *rancherConfig.RancherConfig) {
|
||||
c := metadata.NewClient(http.DefaultClient)
|
||||
m, err := c.Metadata.Get()
|
||||
if err != nil {
|
||||
logrus.Errorf("Failed to get Packet metadata: %v", err)
|
||||
log.Errorf("Failed to get Packet metadata: %v", err)
|
||||
return
|
||||
}
|
||||
|
||||
bondCfg := netconf.InterfaceConfig{
|
||||
bondCfg := config.InterfaceConfig{
|
||||
Addresses: []string{},
|
||||
BondOpts: map[string]string{
|
||||
"lacp_rate": "1",
|
||||
@ -51,11 +52,11 @@ func enablePacketNetwork(cfg *rancherConfig.RancherConfig) {
|
||||
"mode": "4",
|
||||
},
|
||||
}
|
||||
netCfg := netconf.NetworkConfig{
|
||||
Interfaces: map[string]netconf.InterfaceConfig{},
|
||||
netCfg := config.NetworkConfig{
|
||||
Interfaces: map[string]config.InterfaceConfig{},
|
||||
}
|
||||
for _, iface := range m.Network.Interfaces {
|
||||
netCfg.Interfaces["mac="+iface.Mac] = netconf.InterfaceConfig{
|
||||
netCfg.Interfaces["mac="+iface.Mac] = config.InterfaceConfig{
|
||||
Bond: "bond0",
|
||||
}
|
||||
}
|
||||
@ -78,26 +79,26 @@ func enablePacketNetwork(cfg *rancherConfig.RancherConfig) {
|
||||
|
||||
netCfg.Interfaces["bond0"] = bondCfg
|
||||
b, _ := yaml.Marshal(netCfg)
|
||||
logrus.Debugf("Generated network config: %s", string(b))
|
||||
log.Debugf("Generated network config: %s", string(b))
|
||||
|
||||
cc := rancherConfig.CloudConfig{
|
||||
Rancher: rancherConfig.RancherConfig{
|
||||
cc := config.CloudConfig{
|
||||
Rancher: config.RancherConfig{
|
||||
Network: netCfg,
|
||||
},
|
||||
}
|
||||
|
||||
// Post to phone home URL on first boot
|
||||
if _, err = os.Stat(rancherConfig.CloudConfigNetworkFile); err != nil {
|
||||
if _, err = os.Stat(config.CloudConfigNetworkFile); err != nil {
|
||||
if _, err = http.Post(m.PhoneHomeURL, "application/json", bytes.NewReader([]byte{})); err != nil {
|
||||
logrus.Errorf("Failed to post to Packet phone home URL: %v", err)
|
||||
log.Errorf("Failed to post to Packet phone home URL: %v", err)
|
||||
}
|
||||
}
|
||||
|
||||
if err := os.MkdirAll(path.Dir(rancherConfig.CloudConfigNetworkFile), 0700); err != nil {
|
||||
logrus.Errorf("Failed to create directory for file %s: %v", rancherConfig.CloudConfigNetworkFile, err)
|
||||
if err := os.MkdirAll(path.Dir(config.CloudConfigNetworkFile), 0700); err != nil {
|
||||
log.Errorf("Failed to create directory for file %s: %v", config.CloudConfigNetworkFile, err)
|
||||
}
|
||||
|
||||
if err := rancherConfig.WriteToFile(cc, rancherConfig.CloudConfigNetworkFile); err != nil {
|
||||
logrus.Errorf("Failed to save config file %s: %v", rancherConfig.CloudConfigNetworkFile, err)
|
||||
if err := config.WriteToFile(cc, config.CloudConfigNetworkFile); err != nil {
|
||||
log.Errorf("Failed to save config file %s: %v", config.CloudConfigNetworkFile, err)
|
||||
}
|
||||
}
|
||||
|
109
cmd/control/bootstrap.go
Normal file
@ -0,0 +1,109 @@
|
||||
package control
|
||||
|
||||
import (
|
||||
"io/ioutil"
|
||||
"os"
|
||||
"os/exec"
|
||||
"strings"
|
||||
"time"
|
||||
|
||||
"github.com/codegangsta/cli"
|
||||
|
||||
"github.com/rancher/os/config"
|
||||
"github.com/rancher/os/log"
|
||||
"github.com/rancher/os/util"
|
||||
)
|
||||
|
||||
func bootstrapAction(c *cli.Context) error {
|
||||
if err := UdevSettle(); err != nil {
|
||||
log.Errorf("Failed to run udev settle: %v", err)
|
||||
}
|
||||
|
||||
cfg := config.LoadConfig()
|
||||
|
||||
if cfg.Rancher.State.MdadmScan {
|
||||
if err := mdadmScan(); err != nil {
|
||||
log.Errorf("Failed to run mdadm scan: %v", err)
|
||||
}
|
||||
}
|
||||
|
||||
stateScript := cfg.Rancher.State.Script
|
||||
if stateScript != "" {
|
||||
if err := runStateScript(stateScript); err != nil {
|
||||
log.Errorf("Failed to run state script: %v", err)
|
||||
}
|
||||
}
|
||||
|
||||
util.RunCommandSequence(cfg.Bootcmd)
|
||||
|
||||
if cfg.Rancher.State.Dev != "" && cfg.Rancher.State.Wait {
|
||||
waitForRoot(cfg)
|
||||
}
|
||||
|
||||
autoformatDevices := cfg.Rancher.State.Autoformat
|
||||
if len(autoformatDevices) > 0 {
|
||||
if err := autoformat(autoformatDevices); err != nil {
|
||||
log.Errorf("Failed to run autoformat: %v", err)
|
||||
}
|
||||
}
|
||||
|
||||
if err := UdevSettle(); err != nil {
|
||||
log.Errorf("Failed to run udev settle: %v", err)
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func mdadmScan() error {
|
||||
cmd := exec.Command("mdadm", "--assemble", "--scan")
|
||||
cmd.Stdout = os.Stdout
|
||||
cmd.Stderr = os.Stderr
|
||||
return cmd.Run()
|
||||
}
|
||||
|
||||
func runStateScript(script string) error {
|
||||
f, err := ioutil.TempFile("", "")
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if _, err := f.WriteString(script); err != nil {
|
||||
return err
|
||||
}
|
||||
if err := f.Chmod(os.ModePerm); err != nil {
|
||||
return err
|
||||
}
|
||||
if err := f.Close(); err != nil {
|
||||
return err
|
||||
}
|
||||
return util.RunScript(f.Name())
|
||||
}
|
||||
|
||||
func waitForRoot(cfg *config.CloudConfig) {
|
||||
var dev string
|
||||
for i := 0; i < 30; i++ {
|
||||
dev = util.ResolveDevice(cfg.Rancher.State.Dev)
|
||||
if dev != "" {
|
||||
break
|
||||
}
|
||||
time.Sleep(time.Millisecond * 1000)
|
||||
}
|
||||
if dev == "" {
|
||||
return
|
||||
}
|
||||
for i := 0; i < 30; i++ {
|
||||
if _, err := os.Stat(dev); err == nil {
|
||||
break
|
||||
}
|
||||
time.Sleep(time.Millisecond * 1000)
|
||||
}
|
||||
}
|
||||
|
||||
func autoformat(autoformatDevices []string) error {
|
||||
cmd := exec.Command("/usr/sbin/auto-format.sh")
|
||||
cmd.Stdout = os.Stdout
|
||||
cmd.Stderr = os.Stderr
|
||||
cmd.Env = []string{
|
||||
"AUTOFORMAT=" + strings.Join(autoformatDevices, " "),
|
||||
}
|
||||
return cmd.Run()
|
||||
}
|
@ -3,17 +3,19 @@ package control
|
||||
import (
|
||||
"os"
|
||||
|
||||
log "github.com/Sirupsen/logrus"
|
||||
"github.com/codegangsta/cli"
|
||||
"github.com/rancher/os/cmd/control/service"
|
||||
"github.com/rancher/os/config"
|
||||
"github.com/rancher/os/log"
|
||||
)
|
||||
|
||||
func Main() {
|
||||
log.InitLogger()
|
||||
app := cli.NewApp()
|
||||
|
||||
app.Name = os.Args[0]
|
||||
app.Usage = "Control and configure RancherOS"
|
||||
app.Version = config.VERSION
|
||||
app.Version = config.Version
|
||||
app.Author = "Rancher Labs, Inc."
|
||||
app.EnableBashCompletion = true
|
||||
app.Before = func(c *cli.Context) error {
|
||||
@ -24,6 +26,13 @@ func Main() {
|
||||
}
|
||||
|
||||
app.Commands = []cli.Command{
|
||||
{
|
||||
Name: "bootstrap",
|
||||
Hidden: true,
|
||||
HideHelp: true,
|
||||
SkipFlagParsing: true,
|
||||
Action: bootstrapAction,
|
||||
},
|
||||
{
|
||||
Name: "config",
|
||||
ShortName: "c",
|
||||
@ -37,14 +46,27 @@ func Main() {
|
||||
HideHelp: true,
|
||||
Subcommands: consoleSubcommands(),
|
||||
},
|
||||
{
|
||||
Name: "console-init",
|
||||
Hidden: true,
|
||||
HideHelp: true,
|
||||
SkipFlagParsing: true,
|
||||
Action: consoleInitAction,
|
||||
},
|
||||
{
|
||||
Name: "dev",
|
||||
ShortName: "d",
|
||||
Usage: "dev spec",
|
||||
Hidden: true,
|
||||
HideHelp: true,
|
||||
SkipFlagParsing: true,
|
||||
Action: devAction,
|
||||
},
|
||||
{
|
||||
Name: "docker-init",
|
||||
Hidden: true,
|
||||
HideHelp: true,
|
||||
SkipFlagParsing: true,
|
||||
Action: dockerInitAction,
|
||||
},
|
||||
{
|
||||
Name: "engine",
|
||||
Usage: "manage which Docker engine is used",
|
||||
@ -53,31 +75,59 @@ func Main() {
|
||||
},
|
||||
{
|
||||
Name: "entrypoint",
|
||||
Hidden: true,
|
||||
HideHelp: true,
|
||||
SkipFlagParsing: true,
|
||||
Action: entrypointAction,
|
||||
},
|
||||
{
|
||||
Name: "env",
|
||||
ShortName: "e",
|
||||
Usage: "env command",
|
||||
Hidden: true,
|
||||
HideHelp: true,
|
||||
SkipFlagParsing: true,
|
||||
Action: envAction,
|
||||
},
|
||||
serviceCommand(),
|
||||
service.Commands(),
|
||||
{
|
||||
Name: "os",
|
||||
Usage: "operating system upgrade/downgrade",
|
||||
HideHelp: true,
|
||||
Subcommands: osSubcommands(),
|
||||
},
|
||||
{
|
||||
Name: "preload-images",
|
||||
Hidden: true,
|
||||
HideHelp: true,
|
||||
SkipFlagParsing: true,
|
||||
Action: preloadImagesAction,
|
||||
},
|
||||
{
|
||||
Name: "switch-console",
|
||||
Hidden: true,
|
||||
HideHelp: true,
|
||||
SkipFlagParsing: true,
|
||||
Action: switchConsoleAction,
|
||||
},
|
||||
{
|
||||
Name: "tls",
|
||||
Usage: "setup tls configuration",
|
||||
HideHelp: true,
|
||||
Subcommands: tlsConfCommands(),
|
||||
},
|
||||
{
|
||||
Name: "udev-settle",
|
||||
Hidden: true,
|
||||
HideHelp: true,
|
||||
SkipFlagParsing: true,
|
||||
Action: udevSettleAction,
|
||||
},
|
||||
{
|
||||
Name: "user-docker",
|
||||
Hidden: true,
|
||||
HideHelp: true,
|
||||
SkipFlagParsing: true,
|
||||
Action: userDockerAction,
|
||||
},
|
||||
installCommand,
|
||||
selinuxCommand(),
|
||||
}
|
||||
|
@ -9,8 +9,8 @@ import (
|
||||
"strings"
|
||||
"text/template"
|
||||
|
||||
log "github.com/Sirupsen/logrus"
|
||||
yaml "github.com/cloudfoundry-incubator/candiedyaml"
|
||||
"github.com/rancher/os/log"
|
||||
|
||||
"github.com/codegangsta/cli"
|
||||
"github.com/rancher/os/config"
|
||||
@ -76,6 +76,17 @@ func configSubcommands() []cli.Command {
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
Name: "validate",
|
||||
Usage: "validate configuration from stdin",
|
||||
Action: validate,
|
||||
Flags: []cli.Flag{
|
||||
cli.StringFlag{
|
||||
Name: "input, i",
|
||||
Usage: "File from which to read",
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
@ -85,9 +96,6 @@ func imagesFromConfig(cfg *config.CloudConfig) []string {
|
||||
for _, service := range cfg.Rancher.BootstrapContainers {
|
||||
imagesMap[service.Image] = 1
|
||||
}
|
||||
for _, service := range cfg.Rancher.Autoformat {
|
||||
imagesMap[service.Image] = 1
|
||||
}
|
||||
for _, service := range cfg.Rancher.Services {
|
||||
imagesMap[service.Image] = 1
|
||||
}
|
||||
@ -96,7 +104,7 @@ func imagesFromConfig(cfg *config.CloudConfig) []string {
|
||||
i := 0
|
||||
for image := range imagesMap {
|
||||
images[i] = image
|
||||
i += 1
|
||||
i++
|
||||
}
|
||||
sort.Strings(images)
|
||||
return images
|
||||
@ -186,18 +194,7 @@ func configGet(c *cli.Context) error {
|
||||
}
|
||||
|
||||
func merge(c *cli.Context) error {
|
||||
input := os.Stdin
|
||||
inputFile := c.String("input")
|
||||
if inputFile != "" {
|
||||
var err error
|
||||
input, err = os.Open(inputFile)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
defer input.Close()
|
||||
}
|
||||
|
||||
bytes, err := ioutil.ReadAll(input)
|
||||
bytes, err := inputBytes(c)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
@ -227,3 +224,32 @@ func export(c *cli.Context) error {
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func validate(c *cli.Context) error {
|
||||
bytes, err := inputBytes(c)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
validationErrors, err := config.Validate(bytes)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
for _, validationError := range validationErrors.Errors() {
|
||||
log.Error(validationError)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func inputBytes(c *cli.Context) ([]byte, error) {
|
||||
input := os.Stdin
|
||||
inputFile := c.String("input")
|
||||
if inputFile != "" {
|
||||
var err error
|
||||
input, err = os.Open(inputFile)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
defer input.Close()
|
||||
}
|
||||
return ioutil.ReadAll(input)
|
||||
}
|
||||
|
@ -1,21 +1,19 @@
|
||||
package control
|
||||
|
||||
import (
|
||||
"bufio"
|
||||
"fmt"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
"sort"
|
||||
"strings"
|
||||
|
||||
"golang.org/x/net/context"
|
||||
|
||||
log "github.com/Sirupsen/logrus"
|
||||
"github.com/codegangsta/cli"
|
||||
composeConfig "github.com/docker/libcompose/config"
|
||||
"github.com/docker/libcompose/project/options"
|
||||
"github.com/rancher/os/compose"
|
||||
"github.com/rancher/os/config"
|
||||
"github.com/rancher/os/log"
|
||||
"github.com/rancher/os/util/network"
|
||||
)
|
||||
|
||||
@ -61,12 +59,11 @@ func consoleSwitch(c *cli.Context) error {
|
||||
}
|
||||
|
||||
if !c.Bool("force") {
|
||||
in := bufio.NewReader(os.Stdin)
|
||||
fmt.Println(`Switching consoles will
|
||||
1. destroy the current console container
|
||||
2. log you out
|
||||
3. restart Docker`)
|
||||
if !yes(in, "Continue") {
|
||||
if !yes("Continue") {
|
||||
return nil
|
||||
}
|
||||
}
|
||||
@ -82,11 +79,11 @@ func consoleSwitch(c *cli.Context) error {
|
||||
Privileged: true,
|
||||
Net: "host",
|
||||
Pid: "host",
|
||||
Image: config.OS_BASE,
|
||||
Image: config.OsBase,
|
||||
Labels: map[string]string{
|
||||
config.SCOPE: config.SYSTEM,
|
||||
config.ScopeLabel: config.System,
|
||||
},
|
||||
Command: []string{"/usr/bin/switch-console", newConsole},
|
||||
Command: []string{"/usr/bin/ros", "switch-console", newConsole},
|
||||
VolumesFrom: []string{"all-volumes"},
|
||||
})
|
||||
if err != nil {
|
||||
|
@ -1,4 +1,4 @@
|
||||
package console
|
||||
package control
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
@ -11,9 +11,10 @@ import (
|
||||
"strings"
|
||||
"syscall"
|
||||
|
||||
log "github.com/Sirupsen/logrus"
|
||||
"github.com/codegangsta/cli"
|
||||
"github.com/rancher/os/cmd/cloudinitexecute"
|
||||
"github.com/rancher/os/config"
|
||||
"github.com/rancher/os/log"
|
||||
"github.com/rancher/os/util"
|
||||
)
|
||||
|
||||
@ -29,7 +30,7 @@ type symlink struct {
|
||||
oldname, newname string
|
||||
}
|
||||
|
||||
func Main() {
|
||||
func consoleInitAction(c *cli.Context) error {
|
||||
cfg := config.LoadConfig()
|
||||
|
||||
if _, err := os.Stat(rancherHome); os.IsNotExist(err) {
|
||||
@ -74,10 +75,6 @@ func Main() {
|
||||
log.Error(err)
|
||||
}
|
||||
|
||||
if err := writeOsRelease(); err != nil {
|
||||
log.Error(err)
|
||||
}
|
||||
|
||||
for _, link := range []symlink{
|
||||
{"/var/lib/rancher/engine/docker", "/usr/bin/docker"},
|
||||
{"/var/lib/rancher/engine/docker-containerd", "/usr/bin/docker-containerd"},
|
||||
@ -86,6 +83,8 @@ func Main() {
|
||||
{"/var/lib/rancher/engine/dockerd", "/usr/bin/dockerd"},
|
||||
{"/var/lib/rancher/engine/docker-proxy", "/usr/bin/docker-proxy"},
|
||||
{"/var/lib/rancher/engine/docker-runc", "/usr/bin/docker-runc"},
|
||||
{"/usr/share/rancher/os-release", "/usr/lib/os-release"},
|
||||
{"/usr/share/rancher/os-release", "/etc/os-release"},
|
||||
} {
|
||||
syscall.Unlink(link.newname)
|
||||
if err := os.Symlink(link.oldname, link.newname); err != nil {
|
||||
@ -105,10 +104,10 @@ func Main() {
|
||||
|
||||
cloudinitexecute.ApplyConsole(cfg)
|
||||
|
||||
if err := runScript(config.CloudConfigScriptFile); err != nil {
|
||||
if err := util.RunScript(config.CloudConfigScriptFile); err != nil {
|
||||
log.Error(err)
|
||||
}
|
||||
if err := runScript(startScript); err != nil {
|
||||
if err := util.RunScript(startScript); err != nil {
|
||||
log.Error(err)
|
||||
}
|
||||
|
||||
@ -116,7 +115,7 @@ func Main() {
|
||||
log.Error(err)
|
||||
}
|
||||
|
||||
if err := runScript("/etc/rc.local"); err != nil {
|
||||
if err := util.RunScript("/etc/rc.local"); err != nil {
|
||||
log.Error(err)
|
||||
}
|
||||
|
||||
@ -124,10 +123,10 @@ func Main() {
|
||||
|
||||
respawnBinPath, err := exec.LookPath("respawn")
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
return err
|
||||
}
|
||||
|
||||
log.Fatal(syscall.Exec(respawnBinPath, []string{"respawn", "-f", "/etc/respawn.conf"}, os.Environ()))
|
||||
return syscall.Exec(respawnBinPath, []string{"respawn", "-f", "/etc/respawn.conf"}, os.Environ())
|
||||
}
|
||||
|
||||
func generateRespawnConf(cmdline string) string {
|
||||
@ -211,33 +210,6 @@ func modifySshdConfig() error {
|
||||
return ioutil.WriteFile("/etc/ssh/sshd_config", []byte(sshdConfigString), 0644)
|
||||
}
|
||||
|
||||
func writeOsRelease() error {
|
||||
idLike := "busybox"
|
||||
if osRelease, err := ioutil.ReadFile("/etc/os-release"); err == nil {
|
||||
for _, line := range strings.Split(string(osRelease), "\n") {
|
||||
if strings.HasPrefix(line, "ID_LIKE") {
|
||||
split := strings.Split(line, "ID_LIKE")
|
||||
if len(split) > 1 {
|
||||
idLike = split[1]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return ioutil.WriteFile("/etc/os-release", []byte(fmt.Sprintf(`
|
||||
NAME="RancherOS"
|
||||
VERSION=%s
|
||||
ID=rancheros
|
||||
ID_LIKE=%s
|
||||
VERSION_ID=%s
|
||||
PRETTY_NAME="RancherOS %s"
|
||||
HOME_URL=
|
||||
SUPPORT_URL=
|
||||
BUG_REPORT_URL=
|
||||
BUILD_ID=
|
||||
`, config.VERSION, idLike, config.VERSION, config.VERSION)), 0644)
|
||||
}
|
||||
|
||||
func setupSSH(cfg *config.CloudConfig) error {
|
||||
for _, keyType := range []string{"rsa", "dsa", "ecdsa", "ed25519"} {
|
||||
outputFile := fmt.Sprintf("/etc/ssh/ssh_host_%s_key", keyType)
|
||||
@ -247,8 +219,8 @@ func setupSSH(cfg *config.CloudConfig) error {
|
||||
continue
|
||||
}
|
||||
|
||||
saved, savedExists := cfg.Rancher.Ssh.Keys[keyType]
|
||||
pub, pubExists := cfg.Rancher.Ssh.Keys[keyType+"-pub"]
|
||||
saved, savedExists := cfg.Rancher.SSH.Keys[keyType]
|
||||
pub, pubExists := cfg.Rancher.SSH.Keys[keyType+"-pub"]
|
||||
|
||||
if savedExists && pubExists {
|
||||
// TODO check permissions
|
||||
@ -282,29 +254,3 @@ func setupSSH(cfg *config.CloudConfig) error {
|
||||
|
||||
return os.MkdirAll("/var/run/sshd", 0644)
|
||||
}
|
||||
|
||||
func runScript(path string) error {
|
||||
if !util.ExistsAndExecutable(path) {
|
||||
return nil
|
||||
}
|
||||
|
||||
script, err := os.Open(path)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
magic := make([]byte, 2)
|
||||
if _, err = script.Read(magic); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
cmd := exec.Command("/bin/sh", path)
|
||||
if string(magic) == "#!" {
|
||||
cmd = exec.Command(path)
|
||||
}
|
||||
|
||||
cmd.Stdout = os.Stdout
|
||||
cmd.Stderr = os.Stderr
|
||||
|
||||
return cmd.Run()
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
package dockerinit
|
||||
package control
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
@ -9,19 +9,19 @@ import (
|
||||
"syscall"
|
||||
"time"
|
||||
|
||||
log "github.com/Sirupsen/logrus"
|
||||
"github.com/codegangsta/cli"
|
||||
"github.com/rancher/os/config"
|
||||
"github.com/rancher/os/log"
|
||||
"github.com/rancher/os/util"
|
||||
)
|
||||
|
||||
const (
|
||||
consoleDone = "/run/console-done"
|
||||
dockerConf = "/var/lib/rancher/conf/docker"
|
||||
dockerDone = "/run/docker-done"
|
||||
dockerLog = "/var/log/docker.log"
|
||||
)
|
||||
|
||||
func Main() {
|
||||
func dockerInitAction(c *cli.Context) error {
|
||||
for {
|
||||
if _, err := os.Stat(consoleDone); err == nil {
|
||||
break
|
||||
@ -54,7 +54,7 @@ func Main() {
|
||||
|
||||
mountInfo, err := ioutil.ReadFile("/proc/self/mountinfo")
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
return err
|
||||
}
|
||||
|
||||
for _, mount := range strings.Split(string(mountInfo), "\n") {
|
||||
@ -66,7 +66,7 @@ func Main() {
|
||||
args := []string{
|
||||
"bash",
|
||||
"-c",
|
||||
fmt.Sprintf(`[ -e %s ] && source %s; exec /usr/bin/dockerlaunch %s %s $DOCKER_OPTS >> %s 2>&1`, dockerConf, dockerConf, dockerBin, strings.Join(os.Args[1:], " "), dockerLog),
|
||||
fmt.Sprintf(`[ -e %s ] && source %s; exec /usr/bin/dockerlaunch %s %s $DOCKER_OPTS >> %s 2>&1`, dockerConf, dockerConf, dockerBin, strings.Join(c.Args(), " "), dockerLog),
|
||||
}
|
||||
|
||||
cfg := config.LoadConfig()
|
||||
@ -75,5 +75,5 @@ func Main() {
|
||||
log.Error(err)
|
||||
}
|
||||
|
||||
log.Fatal(syscall.Exec("/bin/bash", args, os.Environ()))
|
||||
return syscall.Exec("/bin/bash", args, os.Environ())
|
||||
}
|
@ -8,18 +8,14 @@ import (
|
||||
|
||||
"golang.org/x/net/context"
|
||||
|
||||
log "github.com/Sirupsen/logrus"
|
||||
"github.com/codegangsta/cli"
|
||||
"github.com/docker/libcompose/project/options"
|
||||
"github.com/rancher/os/compose"
|
||||
"github.com/rancher/os/config"
|
||||
"github.com/rancher/os/log"
|
||||
"github.com/rancher/os/util/network"
|
||||
)
|
||||
|
||||
const (
|
||||
dockerDone = "/run/docker-done"
|
||||
)
|
||||
|
||||
func engineSubcommands() []cli.Command {
|
||||
return []cli.Command{
|
||||
{
|
||||
|
@ -5,8 +5,8 @@ import (
|
||||
"os/exec"
|
||||
"syscall"
|
||||
|
||||
log "github.com/Sirupsen/logrus"
|
||||
"github.com/codegangsta/cli"
|
||||
"github.com/rancher/os/log"
|
||||
"golang.org/x/net/context"
|
||||
|
||||
"github.com/rancher/os/cmd/cloudinitexecute"
|
||||
@ -45,6 +45,8 @@ func entrypointAction(c *cli.Context) error {
|
||||
writeFiles(cfg)
|
||||
}
|
||||
|
||||
setupPowerOperations()
|
||||
|
||||
if len(os.Args) < 3 {
|
||||
return nil
|
||||
}
|
||||
@ -58,7 +60,7 @@ func entrypointAction(c *cli.Context) error {
|
||||
}
|
||||
|
||||
func writeFiles(cfg *config.CloudConfig) error {
|
||||
id, err := util.GetCurrentContainerId()
|
||||
id, err := util.GetCurrentContainerID()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
@ -74,3 +76,29 @@ func writeFiles(cfg *config.CloudConfig) error {
|
||||
cloudinitexecute.WriteFiles(cfg, info.Name[1:])
|
||||
return nil
|
||||
}
|
||||
|
||||
func setupPowerOperations() {
|
||||
for _, powerOperation := range []string{
|
||||
"/sbin/poweroff",
|
||||
"/sbin/shutdown",
|
||||
"/sbin/reboot",
|
||||
"/sbin/halt",
|
||||
"/usr/sbin/poweroff",
|
||||
"/usr/sbin/shutdown",
|
||||
"/usr/sbin/reboot",
|
||||
"/usr/sbin/halt",
|
||||
} {
|
||||
os.Remove(powerOperation)
|
||||
}
|
||||
|
||||
for _, link := range []symlink{
|
||||
{config.RosBin, "/sbin/poweroff"},
|
||||
{config.RosBin, "/sbin/reboot"},
|
||||
{config.RosBin, "/sbin/halt"},
|
||||
{config.RosBin, "/sbin/shutdown"},
|
||||
} {
|
||||
if err := os.Symlink(link.oldname, link.newname); err != nil {
|
||||
log.Error(err)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1,13 +1,12 @@
|
||||
package control
|
||||
|
||||
import (
|
||||
"bufio"
|
||||
"fmt"
|
||||
"os"
|
||||
"os/exec"
|
||||
"strings"
|
||||
|
||||
log "github.com/Sirupsen/logrus"
|
||||
"github.com/rancher/os/log"
|
||||
|
||||
"github.com/codegangsta/cli"
|
||||
"github.com/rancher/os/cmd/power"
|
||||
@ -22,8 +21,10 @@ var installCommand = cli.Command{
|
||||
Action: installAction,
|
||||
Flags: []cli.Flag{
|
||||
cli.StringFlag{
|
||||
// TODO: need to validate ? -i rancher/os:v0.3.1 just sat there.
|
||||
Name: "image, i",
|
||||
Usage: "install from a certain image",
|
||||
Usage: `install from a certain image (e.g., 'rancher/os:v0.7.0')
|
||||
use 'ros os list' to see what versions are available.`,
|
||||
},
|
||||
cli.StringFlag{
|
||||
Name: "install-type, t",
|
||||
@ -65,7 +66,7 @@ func installAction(c *cli.Context) error {
|
||||
image := c.String("image")
|
||||
cfg := config.LoadConfig()
|
||||
if image == "" {
|
||||
image = cfg.Rancher.Upgrade.Image + ":" + config.VERSION + config.SUFFIX
|
||||
image = cfg.Rancher.Upgrade.Image + ":" + config.Version + config.Suffix
|
||||
}
|
||||
|
||||
installType := c.String("install-type")
|
||||
@ -97,12 +98,10 @@ func installAction(c *cli.Context) error {
|
||||
}
|
||||
|
||||
func runInstall(image, installType, cloudConfig, device, append string, force, reboot bool) error {
|
||||
in := bufio.NewReader(os.Stdin)
|
||||
|
||||
fmt.Printf("Installing from %s\n", image)
|
||||
|
||||
if !force {
|
||||
if !yes(in, "Continue") {
|
||||
if !yes("Continue") {
|
||||
os.Exit(1)
|
||||
}
|
||||
}
|
||||
@ -122,7 +121,7 @@ func runInstall(image, installType, cloudConfig, device, append string, force, r
|
||||
return err
|
||||
}
|
||||
|
||||
if reboot && (force || yes(in, "Continue with reboot")) {
|
||||
if reboot && (force || yes("Continue with reboot")) {
|
||||
log.Info("Rebooting")
|
||||
power.Reboot()
|
||||
}
|
||||
|
@ -1,7 +1,6 @@
|
||||
package control
|
||||
|
||||
import (
|
||||
"bufio"
|
||||
"fmt"
|
||||
"io/ioutil"
|
||||
"net/http"
|
||||
@ -11,8 +10,8 @@ import (
|
||||
|
||||
"golang.org/x/net/context"
|
||||
|
||||
log "github.com/Sirupsen/logrus"
|
||||
yaml "github.com/cloudfoundry-incubator/candiedyaml"
|
||||
"github.com/rancher/os/log"
|
||||
|
||||
"github.com/codegangsta/cli"
|
||||
dockerClient "github.com/docker/engine-api/client"
|
||||
@ -79,31 +78,32 @@ func osSubcommands() []cli.Command {
|
||||
}
|
||||
}
|
||||
|
||||
// TODO: this and the getLatestImage should probably move to utils/network and be suitably cached.
|
||||
func getImages() (*Images, error) {
|
||||
upgradeUrl, err := getUpgradeUrl()
|
||||
upgradeURL, err := getUpgradeURL()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
var body []byte
|
||||
|
||||
if strings.HasPrefix(upgradeUrl, "/") {
|
||||
body, err = ioutil.ReadFile(upgradeUrl)
|
||||
if strings.HasPrefix(upgradeURL, "/") {
|
||||
body, err = ioutil.ReadFile(upgradeURL)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
} else {
|
||||
u, err := url.Parse(upgradeUrl)
|
||||
u, err := url.Parse(upgradeURL)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
q := u.Query()
|
||||
q.Set("current", config.VERSION)
|
||||
q.Set("current", config.Version)
|
||||
u.RawQuery = q.Encode()
|
||||
upgradeUrl = u.String()
|
||||
upgradeURL = u.String()
|
||||
|
||||
resp, err := http.Get(upgradeUrl)
|
||||
resp, err := http.Get(upgradeURL)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@ -128,13 +128,30 @@ func osMetaDataGet(c *cli.Context) error {
|
||||
log.Fatal(err)
|
||||
}
|
||||
|
||||
for _, image := range images.Available {
|
||||
cfg := config.LoadConfig()
|
||||
runningName := cfg.Rancher.Upgrade.Image + ":" + config.Version
|
||||
|
||||
foundRunning := false
|
||||
for i := len(images.Available) - 1; i >= 0; i-- {
|
||||
image := images.Available[i]
|
||||
_, _, err := client.ImageInspectWithRaw(context.Background(), image, false)
|
||||
local := "local"
|
||||
if dockerClient.IsErrImageNotFound(err) {
|
||||
fmt.Println(image, "remote")
|
||||
} else {
|
||||
fmt.Println(image, "local")
|
||||
local = "remote"
|
||||
}
|
||||
available := "available"
|
||||
if image == images.Current {
|
||||
available = "latest"
|
||||
}
|
||||
var running string
|
||||
if image == runningName {
|
||||
foundRunning = true
|
||||
running = "running"
|
||||
}
|
||||
fmt.Println(image, local, available, running)
|
||||
}
|
||||
if !foundRunning {
|
||||
fmt.Println(config.Version, "running")
|
||||
}
|
||||
|
||||
return nil
|
||||
@ -173,16 +190,14 @@ func osUpgrade(c *cli.Context) error {
|
||||
}
|
||||
|
||||
func osVersion(c *cli.Context) error {
|
||||
fmt.Println(config.VERSION)
|
||||
fmt.Println(config.Version)
|
||||
return nil
|
||||
}
|
||||
|
||||
func startUpgradeContainer(image string, stage, force, reboot, kexec bool, upgradeConsole bool, kernelArgs string) error {
|
||||
in := bufio.NewReader(os.Stdin)
|
||||
|
||||
command := []string{
|
||||
"-t", "rancher-upgrade",
|
||||
"-r", config.VERSION,
|
||||
"-r", config.Version,
|
||||
}
|
||||
|
||||
if kexec {
|
||||
@ -203,10 +218,10 @@ func startUpgradeContainer(image string, stage, force, reboot, kexec bool, upgra
|
||||
fmt.Printf("Upgrading to %s\n", image)
|
||||
confirmation := "Continue"
|
||||
imageSplit := strings.Split(image, ":")
|
||||
if len(imageSplit) > 1 && imageSplit[1] == config.VERSION+config.SUFFIX {
|
||||
if len(imageSplit) > 1 && imageSplit[1] == config.Version+config.Suffix {
|
||||
confirmation = fmt.Sprintf("Already at version %s. Continue anyway", imageSplit[1])
|
||||
}
|
||||
if !force && !yes(in, confirmation) {
|
||||
if !force && !yes(confirmation) {
|
||||
os.Exit(1)
|
||||
}
|
||||
|
||||
@ -217,7 +232,7 @@ func startUpgradeContainer(image string, stage, force, reboot, kexec bool, upgra
|
||||
Pid: "host",
|
||||
Image: image,
|
||||
Labels: map[string]string{
|
||||
config.SCOPE: config.SYSTEM,
|
||||
config.ScopeLabel: config.System,
|
||||
},
|
||||
Command: command,
|
||||
})
|
||||
@ -256,7 +271,7 @@ func startUpgradeContainer(image string, stage, force, reboot, kexec bool, upgra
|
||||
return err
|
||||
}
|
||||
|
||||
if reboot && (force || yes(in, "Continue with reboot")) {
|
||||
if reboot && (force || yes("Continue with reboot")) {
|
||||
log.Info("Rebooting")
|
||||
power.Reboot()
|
||||
}
|
||||
@ -275,7 +290,7 @@ func parseBody(body []byte) (*Images, error) {
|
||||
return update, nil
|
||||
}
|
||||
|
||||
func getUpgradeUrl() (string, error) {
|
||||
func getUpgradeURL() (string, error) {
|
||||
cfg := config.LoadConfig()
|
||||
return cfg.Rancher.Upgrade.Url, nil
|
||||
return cfg.Rancher.Upgrade.URL, nil
|
||||
}
|
||||
|
106
cmd/control/preload.go
Normal file
@ -0,0 +1,106 @@
|
||||
package control
|
||||
|
||||
import (
|
||||
"compress/gzip"
|
||||
"context"
|
||||
"fmt"
|
||||
"io"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
"path"
|
||||
"regexp"
|
||||
"strings"
|
||||
|
||||
"github.com/codegangsta/cli"
|
||||
|
||||
dockerClient "github.com/docker/engine-api/client"
|
||||
"github.com/rancher/os/docker"
|
||||
"github.com/rancher/os/log"
|
||||
)
|
||||
|
||||
const (
|
||||
userImagesPreloadDirectory = "/var/lib/rancher/preload/docker"
|
||||
)
|
||||
|
||||
func preloadImagesAction(c *cli.Context) error {
|
||||
return PreloadImages(docker.NewDefaultClient, userImagesPreloadDirectory)
|
||||
}
|
||||
|
||||
func shouldLoad(file string) bool {
|
||||
if strings.HasSuffix(file, ".done") {
|
||||
return false
|
||||
}
|
||||
if _, err := os.Stat(fmt.Sprintf("%s.done", file)); err == nil {
|
||||
return false
|
||||
}
|
||||
return true
|
||||
}
|
||||
|
||||
func PreloadImages(clientFactory func() (dockerClient.APIClient, error), imagesDir string) error {
|
||||
var client dockerClient.APIClient
|
||||
clientInitialized := false
|
||||
|
||||
if _, err := os.Stat(imagesDir); os.IsNotExist(err) {
|
||||
if err = os.MkdirAll(imagesDir, 0755); err != nil {
|
||||
return err
|
||||
}
|
||||
} else if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
files, err := ioutil.ReadDir(imagesDir)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
for _, file := range files {
|
||||
filename := path.Join(imagesDir, file.Name())
|
||||
if !shouldLoad(filename) {
|
||||
continue
|
||||
}
|
||||
|
||||
image, err := os.Open(filename)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
var imageReader io.Reader
|
||||
imageReader = image
|
||||
match, err := regexp.MatchString(".t?gz$", file.Name())
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if match {
|
||||
imageReader, err = gzip.NewReader(image)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
if !clientInitialized {
|
||||
client, err = clientFactory()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
clientInitialized = true
|
||||
}
|
||||
|
||||
log.Infof("Loading image %s", filename)
|
||||
if _, err = client.ImageLoad(context.Background(), imageReader, false); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if err = image.Close(); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
doneStamp, err := os.Create(fmt.Sprintf("%s.done", filename))
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err = doneStamp.Close(); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
@ -50,7 +50,7 @@ func selinuxCommand() cli.Command {
|
||||
"-v", "/etc/selinux:/etc/selinux",
|
||||
"-v", "/var/lib/selinux:/var/lib/selinux",
|
||||
"-v", "/usr/share/selinux:/usr/share/selinux",
|
||||
fmt.Sprintf("%s/os-selinuxtools:%s%s", config.OS_REPO, config.VERSION, config.SUFFIX), "bash"}
|
||||
fmt.Sprintf("%s/os-selinuxtools:%s%s", config.OsRepo, config.Version, config.Suffix), "bash"}
|
||||
syscall.Exec("/bin/system-docker", argv, []string{})
|
||||
return nil
|
||||
}
|
||||
|
180
cmd/control/service/app/app.go
Normal file
@ -0,0 +1,180 @@
|
||||
package app
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"os"
|
||||
"os/signal"
|
||||
"strings"
|
||||
"syscall"
|
||||
|
||||
"github.com/rancher/os/log"
|
||||
"golang.org/x/net/context"
|
||||
|
||||
"github.com/codegangsta/cli"
|
||||
"github.com/docker/libcompose/project"
|
||||
"github.com/docker/libcompose/project/options"
|
||||
)
|
||||
|
||||
func ProjectPs(p project.APIProject, c *cli.Context) error {
|
||||
qFlag := c.Bool("q")
|
||||
allInfo, err := p.Ps(context.Background(), qFlag, c.Args()...)
|
||||
if err != nil {
|
||||
return cli.NewExitError(err.Error(), 1)
|
||||
}
|
||||
os.Stdout.WriteString(allInfo.String(!qFlag))
|
||||
return nil
|
||||
}
|
||||
|
||||
func ProjectStop(p project.APIProject, c *cli.Context) error {
|
||||
err := p.Stop(context.Background(), c.Int("timeout"), c.Args()...)
|
||||
if err != nil {
|
||||
return cli.NewExitError(err.Error(), 1)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func ProjectDown(p project.APIProject, c *cli.Context) error {
|
||||
options := options.Down{
|
||||
RemoveVolume: c.Bool("volumes"),
|
||||
RemoveImages: options.ImageType(c.String("rmi")),
|
||||
RemoveOrphans: c.Bool("remove-orphans"),
|
||||
}
|
||||
err := p.Down(context.Background(), options, c.Args()...)
|
||||
if err != nil {
|
||||
return cli.NewExitError(err.Error(), 1)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func ProjectBuild(p project.APIProject, c *cli.Context) error {
|
||||
config := options.Build{
|
||||
NoCache: c.Bool("no-cache"),
|
||||
ForceRemove: c.Bool("force-rm"),
|
||||
Pull: c.Bool("pull"),
|
||||
}
|
||||
err := p.Build(context.Background(), config, c.Args()...)
|
||||
if err != nil {
|
||||
return cli.NewExitError(err.Error(), 1)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func ProjectCreate(p project.APIProject, c *cli.Context) error {
|
||||
options := options.Create{
|
||||
NoRecreate: c.Bool("no-recreate"),
|
||||
ForceRecreate: c.Bool("force-recreate"),
|
||||
NoBuild: c.Bool("no-build"),
|
||||
}
|
||||
err := p.Create(context.Background(), options, c.Args()...)
|
||||
if err != nil {
|
||||
return cli.NewExitError(err.Error(), 1)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func ProjectUp(p project.APIProject, c *cli.Context) error {
|
||||
options := options.Up{
|
||||
Create: options.Create{
|
||||
NoRecreate: c.Bool("no-recreate"),
|
||||
ForceRecreate: c.Bool("force-recreate"),
|
||||
NoBuild: c.Bool("no-build"),
|
||||
},
|
||||
}
|
||||
ctx, cancelFun := context.WithCancel(context.Background())
|
||||
err := p.Up(ctx, options, c.Args()...)
|
||||
if err != nil {
|
||||
return cli.NewExitError(err.Error(), 1)
|
||||
}
|
||||
if c.Bool("foreground") {
|
||||
signalChan := make(chan os.Signal, 1)
|
||||
cleanupDone := make(chan bool)
|
||||
signal.Notify(signalChan, syscall.SIGINT, syscall.SIGTERM)
|
||||
errChan := make(chan error)
|
||||
go func() {
|
||||
errChan <- p.Log(ctx, true, c.Args()...)
|
||||
}()
|
||||
go func() {
|
||||
select {
|
||||
case <-signalChan:
|
||||
fmt.Printf("\nGracefully stopping...\n")
|
||||
cancelFun()
|
||||
ProjectStop(p, c)
|
||||
cleanupDone <- true
|
||||
case err := <-errChan:
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
cleanupDone <- true
|
||||
}
|
||||
}()
|
||||
<-cleanupDone
|
||||
return nil
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func ProjectStart(p project.APIProject, c *cli.Context) error {
|
||||
err := p.Start(context.Background(), c.Args()...)
|
||||
if err != nil {
|
||||
return cli.NewExitError(err.Error(), 1)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func ProjectRestart(p project.APIProject, c *cli.Context) error {
|
||||
err := p.Restart(context.Background(), c.Int("timeout"), c.Args()...)
|
||||
if err != nil {
|
||||
return cli.NewExitError(err.Error(), 1)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func ProjectLog(p project.APIProject, c *cli.Context) error {
|
||||
err := p.Log(context.Background(), c.Bool("follow"), c.Args()...)
|
||||
if err != nil {
|
||||
return cli.NewExitError(err.Error(), 1)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func ProjectPull(p project.APIProject, c *cli.Context) error {
|
||||
err := p.Pull(context.Background(), c.Args()...)
|
||||
if err != nil && !c.Bool("ignore-pull-failures") {
|
||||
return cli.NewExitError(err.Error(), 1)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func ProjectDelete(p project.APIProject, c *cli.Context) error {
|
||||
options := options.Delete{
|
||||
RemoveVolume: c.Bool("v"),
|
||||
}
|
||||
if !c.Bool("force") {
|
||||
options.BeforeDeleteCallback = func(stoppedContainers []string) bool {
|
||||
fmt.Printf("Going to remove %v\nAre you sure? [yN]\n", strings.Join(stoppedContainers, ", "))
|
||||
var answer string
|
||||
_, err := fmt.Scanln(&answer)
|
||||
if err != nil {
|
||||
log.Error(err)
|
||||
return false
|
||||
}
|
||||
if answer != "y" && answer != "Y" {
|
||||
return false
|
||||
}
|
||||
return true
|
||||
}
|
||||
}
|
||||
err := p.Delete(context.Background(), options, c.Args()...)
|
||||
if err != nil {
|
||||
return cli.NewExitError(err.Error(), 1)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func ProjectKill(p project.APIProject, c *cli.Context) error {
|
||||
err := p.Kill(context.Background(), c.String("signal"), c.Args()...)
|
||||
if err != nil {
|
||||
return cli.NewExitError(err.Error(), 1)
|
||||
}
|
||||
return nil
|
||||
}
|
243
cmd/control/service/command/command.go
Normal file
@ -0,0 +1,243 @@
|
||||
package command
|
||||
|
||||
import (
|
||||
"errors"
|
||||
|
||||
"github.com/codegangsta/cli"
|
||||
composeApp "github.com/docker/libcompose/cli/app"
|
||||
"github.com/rancher/os/cmd/control/service/app"
|
||||
)
|
||||
|
||||
func verifyOneOrMoreServices(c *cli.Context) error {
|
||||
if len(c.Args()) == 0 {
|
||||
return errors.New("Must specify one or more services")
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func CreateCommand(factory composeApp.ProjectFactory) cli.Command {
|
||||
return cli.Command{
|
||||
Name: "create",
|
||||
Usage: "Create services",
|
||||
Before: verifyOneOrMoreServices,
|
||||
Action: composeApp.WithProject(factory, app.ProjectCreate),
|
||||
Flags: []cli.Flag{
|
||||
cli.BoolFlag{
|
||||
Name: "no-recreate",
|
||||
Usage: "If containers already exist, don't recreate them. Incompatible with --force-recreate.",
|
||||
},
|
||||
cli.BoolFlag{
|
||||
Name: "force-recreate",
|
||||
Usage: "Recreate containers even if their configuration and image haven't changed. Incompatible with --no-recreate.",
|
||||
},
|
||||
cli.BoolFlag{
|
||||
Name: "no-build",
|
||||
Usage: "Don't build an image, even if it's missing.",
|
||||
},
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
func BuildCommand(factory composeApp.ProjectFactory) cli.Command {
|
||||
return cli.Command{
|
||||
Name: "build",
|
||||
Usage: "Build or rebuild services",
|
||||
Before: verifyOneOrMoreServices,
|
||||
Action: composeApp.WithProject(factory, app.ProjectBuild),
|
||||
Flags: []cli.Flag{
|
||||
cli.BoolFlag{
|
||||
Name: "no-cache",
|
||||
Usage: "Do not use cache when building the image",
|
||||
},
|
||||
cli.BoolFlag{
|
||||
Name: "force-rm",
|
||||
Usage: "Always remove intermediate containers",
|
||||
},
|
||||
cli.BoolFlag{
|
||||
Name: "pull",
|
||||
Usage: "Always attempt to pull a newer version of the image",
|
||||
},
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
func PsCommand(factory composeApp.ProjectFactory) cli.Command {
|
||||
return cli.Command{
|
||||
Name: "ps",
|
||||
Usage: "List containers",
|
||||
Action: composeApp.WithProject(factory, app.ProjectPs),
|
||||
Flags: []cli.Flag{
|
||||
cli.BoolFlag{
|
||||
Name: "q",
|
||||
Usage: "Only display IDs",
|
||||
},
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
func UpCommand(factory composeApp.ProjectFactory) cli.Command {
|
||||
return cli.Command{
|
||||
Name: "up",
|
||||
Usage: "Create and start containers",
|
||||
Before: verifyOneOrMoreServices,
|
||||
Action: composeApp.WithProject(factory, app.ProjectUp),
|
||||
Flags: []cli.Flag{
|
||||
cli.BoolFlag{
|
||||
Name: "foreground",
|
||||
Usage: "Run in foreground and log",
|
||||
},
|
||||
cli.BoolFlag{
|
||||
Name: "no-build",
|
||||
Usage: "Don't build an image, even if it's missing.",
|
||||
},
|
||||
cli.BoolFlag{
|
||||
Name: "no-recreate",
|
||||
Usage: "If containers already exist, don't recreate them. Incompatible with --force-recreate.",
|
||||
},
|
||||
cli.BoolFlag{
|
||||
Name: "force-recreate",
|
||||
Usage: "Recreate containers even if their configuration and image haven't changed. Incompatible with --no-recreate.",
|
||||
},
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
func StartCommand(factory composeApp.ProjectFactory) cli.Command {
|
||||
return cli.Command{
|
||||
Name: "start",
|
||||
Usage: "Start services",
|
||||
Before: verifyOneOrMoreServices,
|
||||
Action: composeApp.WithProject(factory, app.ProjectStart),
|
||||
Flags: []cli.Flag{
|
||||
cli.BoolTFlag{
|
||||
Name: "foreground",
|
||||
Usage: "Run in foreground and log",
|
||||
},
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
func PullCommand(factory composeApp.ProjectFactory) cli.Command {
|
||||
return cli.Command{
|
||||
Name: "pull",
|
||||
Usage: "Pulls service images",
|
||||
Before: verifyOneOrMoreServices,
|
||||
Action: composeApp.WithProject(factory, app.ProjectPull),
|
||||
Flags: []cli.Flag{
|
||||
cli.BoolFlag{
|
||||
Name: "ignore-pull-failures",
|
||||
Usage: "Pull what it can and ignores images with pull failures.",
|
||||
},
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
func LogsCommand(factory composeApp.ProjectFactory) cli.Command {
|
||||
return cli.Command{
|
||||
Name: "logs",
|
||||
Usage: "View output from containers",
|
||||
Before: verifyOneOrMoreServices,
|
||||
Action: composeApp.WithProject(factory, app.ProjectLog),
|
||||
Flags: []cli.Flag{
|
||||
cli.IntFlag{
|
||||
Name: "lines",
|
||||
Usage: "number of lines to tail",
|
||||
Value: 100,
|
||||
},
|
||||
cli.BoolFlag{
|
||||
Name: "follow",
|
||||
Usage: "Follow log output.",
|
||||
},
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
func RestartCommand(factory composeApp.ProjectFactory) cli.Command {
|
||||
return cli.Command{
|
||||
Name: "restart",
|
||||
Usage: "Restart services",
|
||||
Before: verifyOneOrMoreServices,
|
||||
Action: composeApp.WithProject(factory, app.ProjectRestart),
|
||||
Flags: []cli.Flag{
|
||||
cli.IntFlag{
|
||||
Name: "timeout,t",
|
||||
Usage: "Specify a shutdown timeout in seconds.",
|
||||
Value: 10,
|
||||
},
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
func StopCommand(factory composeApp.ProjectFactory) cli.Command {
|
||||
return cli.Command{
|
||||
Name: "stop",
|
||||
Usage: "Stop services",
|
||||
Before: verifyOneOrMoreServices,
|
||||
Action: composeApp.WithProject(factory, app.ProjectStop),
|
||||
Flags: []cli.Flag{
|
||||
cli.IntFlag{
|
||||
Name: "timeout,t",
|
||||
Usage: "Specify a shutdown timeout in seconds.",
|
||||
Value: 10,
|
||||
},
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
func DownCommand(factory composeApp.ProjectFactory) cli.Command {
|
||||
return cli.Command{
|
||||
Name: "down",
|
||||
Usage: "Stop and remove containers, networks, images, and volumes",
|
||||
Before: verifyOneOrMoreServices,
|
||||
Action: composeApp.WithProject(factory, app.ProjectDown),
|
||||
Flags: []cli.Flag{
|
||||
cli.BoolFlag{
|
||||
Name: "volumes,v",
|
||||
Usage: "Remove data volumes",
|
||||
},
|
||||
cli.StringFlag{
|
||||
Name: "rmi",
|
||||
Usage: "Remove images, type may be one of: 'all' to remove all images, or 'local' to remove only images that don't have an custom name set by the `image` field",
|
||||
},
|
||||
cli.BoolFlag{
|
||||
Name: "remove-orphans",
|
||||
Usage: "Remove containers for services not defined in the Compose file",
|
||||
},
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
func RmCommand(factory composeApp.ProjectFactory) cli.Command {
|
||||
return cli.Command{
|
||||
Name: "rm",
|
||||
Usage: "Delete services",
|
||||
Before: verifyOneOrMoreServices,
|
||||
Action: composeApp.WithProject(factory, app.ProjectDelete),
|
||||
Flags: []cli.Flag{
|
||||
cli.BoolFlag{
|
||||
Name: "force,f",
|
||||
Usage: "Allow deletion of all services",
|
||||
},
|
||||
cli.BoolFlag{
|
||||
Name: "v",
|
||||
Usage: "Remove volumes associated with containers",
|
||||
},
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
func KillCommand(factory composeApp.ProjectFactory) cli.Command {
|
||||
return cli.Command{
|
||||
Name: "kill",
|
||||
Usage: "Kill containers",
|
||||
Before: verifyOneOrMoreServices,
|
||||
Action: composeApp.WithProject(factory, app.ProjectKill),
|
||||
Flags: []cli.Flag{
|
||||
cli.StringFlag{
|
||||
Name: "signal,s",
|
||||
Usage: "SIGNAL to send to the container",
|
||||
Value: "SIGKILL",
|
||||
},
|
||||
},
|
||||
}
|
||||
}
|
@ -1,16 +1,16 @@
|
||||
package control
|
||||
package service
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"strings"
|
||||
|
||||
"github.com/Sirupsen/logrus"
|
||||
"github.com/codegangsta/cli"
|
||||
"github.com/docker/libcompose/cli/command"
|
||||
dockerApp "github.com/docker/libcompose/cli/docker/app"
|
||||
"github.com/docker/libcompose/project"
|
||||
"github.com/rancher/os/cmd/control/service/command"
|
||||
"github.com/rancher/os/compose"
|
||||
"github.com/rancher/os/config"
|
||||
"github.com/rancher/os/log"
|
||||
"github.com/rancher/os/util/network"
|
||||
)
|
||||
|
||||
@ -24,12 +24,12 @@ func (p *projectFactory) Create(c *cli.Context) (project.APIProject, error) {
|
||||
|
||||
func beforeApp(c *cli.Context) error {
|
||||
if c.GlobalBool("verbose") {
|
||||
logrus.SetLevel(logrus.DebugLevel)
|
||||
log.SetLevel(log.DebugLevel)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func serviceCommand() cli.Command {
|
||||
func Commands() cli.Command {
|
||||
factory := &projectFactory{}
|
||||
|
||||
app := cli.Command{}
|
||||
@ -37,7 +37,9 @@ func serviceCommand() cli.Command {
|
||||
app.ShortName = "s"
|
||||
app.Usage = "Command line interface for services and compose."
|
||||
app.Before = beforeApp
|
||||
app.Flags = append(command.CommonFlags(), dockerApp.DockerClientFlags()...)
|
||||
app.Flags = append(dockerApp.DockerClientFlags(), cli.BoolFlag{
|
||||
Name: "verbose,debug",
|
||||
})
|
||||
app.Subcommands = append(serviceSubCommands(),
|
||||
command.BuildCommand(factory),
|
||||
command.CreateCommand(factory),
|
||||
@ -46,11 +48,9 @@ func serviceCommand() cli.Command {
|
||||
command.LogsCommand(factory),
|
||||
command.RestartCommand(factory),
|
||||
command.StopCommand(factory),
|
||||
command.ScaleCommand(factory),
|
||||
command.RmCommand(factory),
|
||||
command.PullCommand(factory),
|
||||
command.KillCommand(factory),
|
||||
command.PortCommand(factory),
|
||||
command.PsCommand(factory),
|
||||
)
|
||||
|
||||
@ -101,7 +101,7 @@ func disable(c *cli.Context) error {
|
||||
|
||||
if changed {
|
||||
if err := updateIncludedServices(cfg); err != nil {
|
||||
logrus.Fatal(err)
|
||||
log.Fatal(err)
|
||||
}
|
||||
}
|
||||
|
||||
@ -122,7 +122,7 @@ func del(c *cli.Context) error {
|
||||
|
||||
if changed {
|
||||
if err := updateIncludedServices(cfg); err != nil {
|
||||
logrus.Fatal(err)
|
||||
log.Fatal(err)
|
||||
}
|
||||
}
|
||||
|
||||
@ -137,7 +137,7 @@ func enable(c *cli.Context) error {
|
||||
for _, service := range c.Args() {
|
||||
if val, ok := cfg.Rancher.ServicesInclude[service]; !ok || !val {
|
||||
if strings.HasPrefix(service, "/") && !strings.HasPrefix(service, "/var/lib/rancher/conf") {
|
||||
logrus.Fatalf("ERROR: Service should be in path /var/lib/rancher/conf")
|
||||
log.Fatalf("ERROR: Service should be in path /var/lib/rancher/conf")
|
||||
}
|
||||
|
||||
cfg.Rancher.ServicesInclude[service] = true
|
||||
@ -147,11 +147,11 @@ func enable(c *cli.Context) error {
|
||||
|
||||
if len(enabledServices) > 0 {
|
||||
if err := compose.StageServices(cfg, enabledServices...); err != nil {
|
||||
logrus.Fatal(err)
|
||||
log.Fatal(err)
|
||||
}
|
||||
|
||||
if err := updateIncludedServices(cfg); err != nil {
|
||||
logrus.Fatal(err)
|
||||
log.Fatal(err)
|
||||
}
|
||||
}
|
||||
|
||||
@ -168,7 +168,7 @@ func list(c *cli.Context) error {
|
||||
|
||||
services, err := network.GetServices(cfg.Rancher.Repositories.ToArray())
|
||||
if err != nil {
|
||||
logrus.Fatalf("Failed to get services: %v", err)
|
||||
log.Fatalf("Failed to get services: %v", err)
|
||||
}
|
||||
|
||||
for _, service := range services {
|
@ -1,31 +1,32 @@
|
||||
package switchconsole
|
||||
package control
|
||||
|
||||
import (
|
||||
"os"
|
||||
"errors"
|
||||
|
||||
log "github.com/Sirupsen/logrus"
|
||||
"github.com/codegangsta/cli"
|
||||
"github.com/docker/libcompose/project/options"
|
||||
"github.com/rancher/os/compose"
|
||||
"github.com/rancher/os/config"
|
||||
"github.com/rancher/os/log"
|
||||
"golang.org/x/net/context"
|
||||
)
|
||||
|
||||
func Main() {
|
||||
if len(os.Args) != 2 {
|
||||
log.Fatal("Must specify exactly one existing container")
|
||||
func switchConsoleAction(c *cli.Context) error {
|
||||
if len(c.Args()) != 1 {
|
||||
return errors.New("Must specify exactly one existing container")
|
||||
}
|
||||
newConsole := os.Args[1]
|
||||
newConsole := c.Args()[0]
|
||||
|
||||
cfg := config.LoadConfig()
|
||||
|
||||
project, err := compose.GetProject(cfg, true, false)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
return err
|
||||
}
|
||||
|
||||
if newConsole != "default" {
|
||||
if err = compose.LoadSpecialService(project, cfg, "console", newConsole); err != nil {
|
||||
log.Fatal(err)
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
@ -36,10 +37,12 @@ func Main() {
|
||||
if err = project.Up(context.Background(), options.Up{
|
||||
Log: true,
|
||||
}, "console"); err != nil {
|
||||
log.Fatal(err)
|
||||
return err
|
||||
}
|
||||
|
||||
if err = project.Restart(context.Background(), 10, "docker"); err != nil {
|
||||
log.Errorf("Failed to restart Docker: %v", err)
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
@ -5,7 +5,7 @@ import (
|
||||
"os"
|
||||
"path/filepath"
|
||||
|
||||
log "github.com/Sirupsen/logrus"
|
||||
"github.com/rancher/os/log"
|
||||
|
||||
"github.com/codegangsta/cli"
|
||||
machineUtil "github.com/docker/machine/utils"
|
||||
@ -16,8 +16,8 @@ import (
|
||||
const (
|
||||
NAME string = "rancher"
|
||||
BITS int = 2048
|
||||
ServerTlsPath string = "/etc/docker/tls"
|
||||
ClientTlsPath string = "/home/rancher/.docker"
|
||||
ServerTLSPath string = "/etc/docker/tls"
|
||||
ClientTLSPath string = "/home/rancher/.docker"
|
||||
Cert string = "cert.pem"
|
||||
Key string = "key.pem"
|
||||
ServerCert string = "server-cert.pem"
|
||||
@ -141,9 +141,9 @@ func generate(c *cli.Context) error {
|
||||
func Generate(generateServer bool, outDir string, hostnames []string) error {
|
||||
if outDir == "" {
|
||||
if generateServer {
|
||||
outDir = ServerTlsPath
|
||||
outDir = ServerTLSPath
|
||||
} else {
|
||||
outDir = ClientTlsPath
|
||||
outDir = ClientTLSPath
|
||||
}
|
||||
log.Infof("Out directory (-d, --dir) not specified, using default: %s", outDir)
|
||||
}
|
||||
|
36
cmd/control/udevsettle.go
Normal file
@ -0,0 +1,36 @@
|
||||
package control
|
||||
|
||||
import (
|
||||
"os"
|
||||
"os/exec"
|
||||
|
||||
"github.com/codegangsta/cli"
|
||||
"github.com/rancher/os/log"
|
||||
)
|
||||
|
||||
func udevSettleAction(c *cli.Context) {
|
||||
if err := UdevSettle(); err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
}
|
||||
|
||||
func UdevSettle() error {
|
||||
cmd := exec.Command("udevd", "--daemon")
|
||||
cmd.Stdout = os.Stdout
|
||||
cmd.Stderr = os.Stderr
|
||||
if err := cmd.Run(); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
cmd = exec.Command("udevadm", "trigger", "--action=add")
|
||||
cmd.Stdout = os.Stdout
|
||||
cmd.Stderr = os.Stderr
|
||||
if err := cmd.Run(); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
cmd = exec.Command("udevadm", "settle")
|
||||
cmd.Stdout = os.Stdout
|
||||
cmd.Stderr = os.Stderr
|
||||
return cmd.Run()
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
package userdocker
|
||||
package control
|
||||
|
||||
import (
|
||||
"io"
|
||||
@ -12,37 +12,43 @@ import (
|
||||
|
||||
"path/filepath"
|
||||
|
||||
log "github.com/Sirupsen/logrus"
|
||||
"github.com/codegangsta/cli"
|
||||
composeClient "github.com/docker/libcompose/docker/client"
|
||||
"github.com/docker/libcompose/project"
|
||||
"github.com/rancher/os/cmd/control"
|
||||
"github.com/rancher/os/compose"
|
||||
"github.com/rancher/os/config"
|
||||
rosDocker "github.com/rancher/os/docker"
|
||||
"github.com/rancher/os/log"
|
||||
"github.com/rancher/os/util"
|
||||
)
|
||||
|
||||
const (
|
||||
DEFAULT_STORAGE_CONTEXT = "console"
|
||||
DOCKER_PID_FILE = "/var/run/docker.pid"
|
||||
DOCKER_COMMAND = "docker-init"
|
||||
defaultStorageContext = "console"
|
||||
dockerPidFile = "/var/run/docker.pid"
|
||||
userDocker = "user-docker"
|
||||
sourceDirectory = "/engine"
|
||||
destDirectory = "/var/lib/rancher/engine"
|
||||
)
|
||||
|
||||
func Main() {
|
||||
var (
|
||||
dockerCommand = []string{
|
||||
"ros",
|
||||
"docker-init",
|
||||
}
|
||||
)
|
||||
|
||||
func userDockerAction(c *cli.Context) error {
|
||||
if err := copyBinaries(sourceDirectory, destDirectory); err != nil {
|
||||
log.Fatal(err)
|
||||
return err
|
||||
}
|
||||
|
||||
if err := syscall.Mount("/host/sys", "/sys", "", syscall.MS_BIND|syscall.MS_REC, ""); err != nil {
|
||||
log.Fatal(err)
|
||||
return err
|
||||
}
|
||||
|
||||
cfg := config.LoadConfig()
|
||||
|
||||
log.Fatal(startDocker(cfg))
|
||||
return startDocker(cfg)
|
||||
}
|
||||
|
||||
func copyBinaries(source, dest string) error {
|
||||
@ -98,15 +104,15 @@ func copyBinaries(source, dest string) error {
|
||||
return nil
|
||||
}
|
||||
|
||||
func writeCerts(cfg *config.CloudConfig) error {
|
||||
outDir := control.ServerTlsPath
|
||||
func writeConfigCerts(cfg *config.CloudConfig) error {
|
||||
outDir := ServerTLSPath
|
||||
if err := os.MkdirAll(outDir, 0700); err != nil {
|
||||
return err
|
||||
}
|
||||
caCertPath := filepath.Join(outDir, control.CaCert)
|
||||
caKeyPath := filepath.Join(outDir, control.CaKey)
|
||||
serverCertPath := filepath.Join(outDir, control.ServerCert)
|
||||
serverKeyPath := filepath.Join(outDir, control.ServerKey)
|
||||
caCertPath := filepath.Join(outDir, CaCert)
|
||||
caKeyPath := filepath.Join(outDir, CaKey)
|
||||
serverCertPath := filepath.Join(outDir, ServerCert)
|
||||
serverKeyPath := filepath.Join(outDir, ServerKey)
|
||||
if cfg.Rancher.Docker.CACert != "" {
|
||||
if err := util.WriteFileAtomic(caCertPath, []byte(cfg.Rancher.Docker.CACert), 0400); err != nil {
|
||||
return err
|
||||
@ -131,7 +137,7 @@ func writeCerts(cfg *config.CloudConfig) error {
|
||||
func startDocker(cfg *config.CloudConfig) error {
|
||||
storageContext := cfg.Rancher.Docker.StorageContext
|
||||
if storageContext == "" {
|
||||
storageContext = DEFAULT_STORAGE_CONTEXT
|
||||
storageContext = defaultStorageContext
|
||||
}
|
||||
|
||||
log.Infof("Starting Docker in context: %s", storageContext)
|
||||
@ -160,7 +166,7 @@ func startDocker(cfg *config.CloudConfig) error {
|
||||
log.Debugf("User Docker args: %v", args)
|
||||
|
||||
if dockerCfg.TLS {
|
||||
if err := writeCerts(cfg); err != nil {
|
||||
if err := writeConfigCerts(cfg); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
@ -173,7 +179,7 @@ func startDocker(cfg *config.CloudConfig) error {
|
||||
cmd := []string{"docker-runc", "exec", "--", info.ID, "env"}
|
||||
log.Info(dockerCfg.AppendEnv())
|
||||
cmd = append(cmd, dockerCfg.AppendEnv()...)
|
||||
cmd = append(cmd, DOCKER_COMMAND)
|
||||
cmd = append(cmd, dockerCommand...)
|
||||
cmd = append(cmd, args...)
|
||||
log.Infof("Running %v", cmd)
|
||||
|
||||
@ -208,7 +214,7 @@ func getPid(service string, project *project.Project) (int, error) {
|
||||
}
|
||||
|
||||
client, err := composeClient.Create(composeClient.Options{
|
||||
Host: config.DOCKER_SYSTEM_HOST,
|
||||
Host: config.SystemDockerHost,
|
||||
})
|
||||
if err != nil {
|
||||
return 0, err
|
@ -1,16 +1,16 @@
|
||||
package control
|
||||
|
||||
import (
|
||||
"bufio"
|
||||
"fmt"
|
||||
"strings"
|
||||
|
||||
log "github.com/Sirupsen/logrus"
|
||||
"github.com/rancher/os/log"
|
||||
)
|
||||
|
||||
func yes(in *bufio.Reader, question string) bool {
|
||||
func yes(question string) bool {
|
||||
fmt.Printf("%s [y/N]: ", question)
|
||||
line, err := in.ReadString('\n')
|
||||
var line string
|
||||
_, err := fmt.Scan(&line)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
|
@ -1,60 +1,31 @@
|
||||
package network
|
||||
|
||||
import (
|
||||
"flag"
|
||||
"os"
|
||||
|
||||
"golang.org/x/net/context"
|
||||
|
||||
log "github.com/Sirupsen/logrus"
|
||||
"github.com/rancher/os/log"
|
||||
|
||||
"github.com/docker/libnetwork/resolvconf"
|
||||
"github.com/rancher/netconf"
|
||||
"github.com/rancher/os/config"
|
||||
"github.com/rancher/os/docker"
|
||||
"github.com/rancher/os/hostname"
|
||||
"github.com/rancher/os/netconf"
|
||||
)
|
||||
|
||||
var (
|
||||
stopNetworkPre bool
|
||||
flags *flag.FlagSet
|
||||
)
|
||||
|
||||
func init() {
|
||||
flags = flag.NewFlagSet(os.Args[0], flag.ContinueOnError)
|
||||
flags.BoolVar(&stopNetworkPre, "stop-network-pre", false, "")
|
||||
}
|
||||
|
||||
func Main() {
|
||||
flags.Parse(os.Args[1:])
|
||||
|
||||
log.Infof("Running network: stop-network-pre=%v", stopNetworkPre)
|
||||
|
||||
if stopNetworkPre {
|
||||
client, err := docker.NewSystemClient()
|
||||
if err != nil {
|
||||
log.Error(err)
|
||||
}
|
||||
|
||||
err = client.ContainerStop(context.Background(), "network-pre", 10)
|
||||
if err != nil {
|
||||
log.Error(err)
|
||||
}
|
||||
|
||||
_, err = client.ContainerWait(context.Background(), "network-pre")
|
||||
if err != nil {
|
||||
log.Error(err)
|
||||
}
|
||||
}
|
||||
log.InitLogger()
|
||||
log.Infof("Running network")
|
||||
|
||||
cfg := config.LoadConfig()
|
||||
ApplyNetworkConfig(cfg)
|
||||
|
||||
nameservers := cfg.Rancher.Network.Dns.Nameservers
|
||||
search := cfg.Rancher.Network.Dns.Search
|
||||
userSetDns := len(nameservers) > 0 || len(search) > 0
|
||||
if !userSetDns {
|
||||
nameservers = cfg.Rancher.Defaults.Network.Dns.Nameservers
|
||||
search = cfg.Rancher.Defaults.Network.Dns.Search
|
||||
select {}
|
||||
}
|
||||
|
||||
func ApplyNetworkConfig(cfg *config.CloudConfig) {
|
||||
nameservers := cfg.Rancher.Network.DNS.Nameservers
|
||||
search := cfg.Rancher.Network.DNS.Search
|
||||
userSetDNS := len(nameservers) > 0 || len(search) > 0
|
||||
if !userSetDNS {
|
||||
nameservers = cfg.Rancher.Defaults.Network.DNS.Nameservers
|
||||
search = cfg.Rancher.Defaults.Network.DNS.Search
|
||||
}
|
||||
|
||||
if _, err := resolvconf.Build("/etc/resolv.conf", nameservers, search, nil); err != nil {
|
||||
@ -70,13 +41,11 @@ func Main() {
|
||||
}
|
||||
|
||||
userSetHostname := cfg.Hostname != ""
|
||||
if err := netconf.RunDhcp(&cfg.Rancher.Network, !userSetHostname, !userSetDns); err != nil {
|
||||
if err := netconf.RunDhcp(&cfg.Rancher.Network, !userSetHostname, !userSetDNS); err != nil {
|
||||
log.Error(err)
|
||||
}
|
||||
|
||||
if err := hostname.SyncHostname(); err != nil {
|
||||
log.Error(err)
|
||||
}
|
||||
|
||||
select {}
|
||||
}
|
||||
|
@ -10,10 +10,10 @@ import (
|
||||
|
||||
"golang.org/x/net/context"
|
||||
|
||||
log "github.com/Sirupsen/logrus"
|
||||
"github.com/docker/engine-api/types"
|
||||
"github.com/docker/engine-api/types/container"
|
||||
"github.com/docker/engine-api/types/filters"
|
||||
"github.com/rancher/os/log"
|
||||
|
||||
"github.com/rancher/os/docker"
|
||||
"github.com/rancher/os/util"
|
||||
@ -47,12 +47,12 @@ func runDocker(name string) error {
|
||||
}
|
||||
}
|
||||
|
||||
currentContainerId, err := util.GetCurrentContainerId()
|
||||
currentContainerID, err := util.GetCurrentContainerID()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
currentContainer, err := client.ContainerInspect(context.Background(), currentContainerId)
|
||||
currentContainer, err := client.ContainerInspect(context.Background(), currentContainerID)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
@ -110,7 +110,7 @@ func common(name string) {
|
||||
}
|
||||
}
|
||||
|
||||
func PowerOff() {
|
||||
func Off() {
|
||||
common("poweroff")
|
||||
reboot(syscall.LINUX_REBOOT_CMD_POWER_OFF)
|
||||
}
|
||||
@ -181,7 +181,7 @@ func shutDownContainers() error {
|
||||
return err
|
||||
}
|
||||
|
||||
currentContainerId, err := util.GetCurrentContainerId()
|
||||
currentContainerID, err := util.GetCurrentContainerID()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
@ -189,7 +189,7 @@ func shutDownContainers() error {
|
||||
var stopErrorStrings []string
|
||||
|
||||
for _, container := range containers {
|
||||
if container.ID == currentContainerId {
|
||||
if container.ID == currentContainerID {
|
||||
continue
|
||||
}
|
||||
|
||||
@ -203,7 +203,7 @@ func shutDownContainers() error {
|
||||
var waitErrorStrings []string
|
||||
|
||||
for _, container := range containers {
|
||||
if container.ID == currentContainerId {
|
||||
if container.ID == currentContainerID {
|
||||
continue
|
||||
}
|
||||
_, waitErr := client.ContainerWait(context.Background(), container.ID)
|
||||
|
@ -5,14 +5,16 @@ import (
|
||||
|
||||
"github.com/codegangsta/cli"
|
||||
"github.com/rancher/os/config"
|
||||
"github.com/rancher/os/log"
|
||||
)
|
||||
|
||||
func Main() {
|
||||
log.InitLogger()
|
||||
app := cli.NewApp()
|
||||
|
||||
app.Name = os.Args[0]
|
||||
app.Usage = "Control and configure RancherOS"
|
||||
app.Version = config.VERSION
|
||||
app.Version = config.Version
|
||||
app.Author = "Rancher Labs, Inc."
|
||||
app.Email = "sid@rancher.com"
|
||||
app.EnableBashCompletion = true
|
||||
@ -39,7 +41,7 @@ func shutdown(c *cli.Context) error {
|
||||
if reboot == "now" {
|
||||
Reboot()
|
||||
} else if poweroff == "now" {
|
||||
PowerOff()
|
||||
Off()
|
||||
}
|
||||
|
||||
return nil
|
||||
|
@ -12,17 +12,18 @@ import (
|
||||
"syscall"
|
||||
"time"
|
||||
|
||||
log "github.com/Sirupsen/logrus"
|
||||
"github.com/codegangsta/cli"
|
||||
"github.com/rancher/os/log"
|
||||
)
|
||||
|
||||
var (
|
||||
running bool = true
|
||||
processes map[int]*os.Process = map[int]*os.Process{}
|
||||
running = true
|
||||
processes = map[int]*os.Process{}
|
||||
processLock = sync.Mutex{}
|
||||
)
|
||||
|
||||
func Main() {
|
||||
log.InitLogger()
|
||||
runtime.GOMAXPROCS(1)
|
||||
runtime.LockOSThread()
|
||||
app := cli.NewApp()
|
||||
|
@ -1,11 +1,12 @@
|
||||
package sysinit
|
||||
|
||||
import (
|
||||
log "github.com/Sirupsen/logrus"
|
||||
initPkg "github.com/rancher/os/init"
|
||||
"github.com/rancher/os/log"
|
||||
)
|
||||
|
||||
func Main() {
|
||||
log.InitLogger()
|
||||
if err := initPkg.SysInit(); err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
|
@ -1,20 +1,21 @@
|
||||
package systemdocker
|
||||
|
||||
import (
|
||||
"log"
|
||||
"os"
|
||||
|
||||
"github.com/docker/docker/docker"
|
||||
"github.com/rancher/os/config"
|
||||
"github.com/rancher/os/log"
|
||||
)
|
||||
|
||||
func Main() {
|
||||
log.InitLogger()
|
||||
if os.Geteuid() != 0 {
|
||||
log.Fatalf("%s: Need to be root", os.Args[0])
|
||||
}
|
||||
|
||||
if os.Getenv("DOCKER_HOST") == "" {
|
||||
os.Setenv("DOCKER_HOST", config.DOCKER_SYSTEM_HOST)
|
||||
os.Setenv("DOCKER_HOST", config.SystemDockerHost)
|
||||
}
|
||||
|
||||
docker.Main()
|
||||
|
@ -3,17 +3,18 @@ package wait
|
||||
import (
|
||||
"os"
|
||||
|
||||
"github.com/Sirupsen/logrus"
|
||||
"github.com/rancher/os/config"
|
||||
"github.com/rancher/os/docker"
|
||||
"github.com/rancher/os/log"
|
||||
)
|
||||
|
||||
func Main() {
|
||||
_, err := docker.NewClient(config.DOCKER_HOST)
|
||||
log.InitLogger()
|
||||
_, err := docker.NewClient(config.DockerHost)
|
||||
if err != nil {
|
||||
logrus.Errorf("Failed to conect to Docker")
|
||||
log.Errorf("Failed to connect to Docker")
|
||||
os.Exit(1)
|
||||
}
|
||||
|
||||
logrus.Infof("Docker is ready")
|
||||
log.Infof("Docker is ready")
|
||||
}
|
||||
|
@ -5,7 +5,6 @@ import (
|
||||
|
||||
"golang.org/x/net/context"
|
||||
|
||||
log "github.com/Sirupsen/logrus"
|
||||
yaml "github.com/cloudfoundry-incubator/candiedyaml"
|
||||
"github.com/docker/libcompose/cli/logger"
|
||||
composeConfig "github.com/docker/libcompose/config"
|
||||
@ -16,6 +15,7 @@ import (
|
||||
"github.com/docker/libcompose/project/options"
|
||||
"github.com/rancher/os/config"
|
||||
rosDocker "github.com/rancher/os/docker"
|
||||
"github.com/rancher/os/log"
|
||||
"github.com/rancher/os/util"
|
||||
"github.com/rancher/os/util/network"
|
||||
)
|
||||
@ -201,7 +201,7 @@ func newCoreServiceProject(cfg *config.CloudConfig, useNetwork, loadConsole bool
|
||||
|
||||
go func() {
|
||||
for event := range projectEvents {
|
||||
if event.EventType == events.ContainerStarted && event.ServiceName == "ntp" {
|
||||
if event.EventType == events.ContainerStarted && event.ServiceName == "network" {
|
||||
useNetwork = true
|
||||
}
|
||||
}
|
||||
|
@ -3,12 +3,12 @@ package compose
|
||||
import (
|
||||
"fmt"
|
||||
|
||||
log "github.com/Sirupsen/logrus"
|
||||
yaml "github.com/cloudfoundry-incubator/candiedyaml"
|
||||
composeConfig "github.com/docker/libcompose/config"
|
||||
"github.com/docker/libcompose/project"
|
||||
"github.com/rancher/os/config"
|
||||
"github.com/rancher/os/docker"
|
||||
"github.com/rancher/os/log"
|
||||
"github.com/rancher/os/util/network"
|
||||
)
|
||||
|
||||
|
@ -18,7 +18,7 @@ func Merge(bytes []byte) error {
|
||||
}
|
||||
|
||||
func Export(private, full bool) (string, error) {
|
||||
rawCfg := loadRawDiskConfig(full)
|
||||
rawCfg := loadRawConfig("", full)
|
||||
if !private {
|
||||
rawCfg = filterPrivateKeys(rawCfg)
|
||||
}
|
||||
|
@ -1,8 +1,8 @@
|
||||
package config
|
||||
|
||||
import (
|
||||
log "github.com/Sirupsen/logrus"
|
||||
yaml "github.com/cloudfoundry-incubator/candiedyaml"
|
||||
"github.com/rancher/os/log"
|
||||
|
||||
"strings"
|
||||
|
||||
|
@ -7,12 +7,12 @@ import (
|
||||
"sort"
|
||||
"strings"
|
||||
|
||||
log "github.com/Sirupsen/logrus"
|
||||
yaml "github.com/cloudfoundry-incubator/candiedyaml"
|
||||
"github.com/coreos/coreos-cloudinit/datasource"
|
||||
"github.com/coreos/coreos-cloudinit/initialize"
|
||||
"github.com/docker/engine-api/types"
|
||||
composeConfig "github.com/docker/libcompose/config"
|
||||
"github.com/rancher/os/log"
|
||||
"github.com/rancher/os/util"
|
||||
)
|
||||
|
||||
@ -31,27 +31,32 @@ func ReadConfig(bytes []byte, substituteMetadataVars bool, files ...string) (*Cl
|
||||
return c, nil
|
||||
}
|
||||
|
||||
func loadRawDiskConfig(full bool) map[interface{}]interface{} {
|
||||
func loadRawDiskConfig(dirPrefix string, full bool) map[interface{}]interface{} {
|
||||
var rawCfg map[interface{}]interface{}
|
||||
if full {
|
||||
rawCfg, _ = readConfigs(nil, true, false, OsConfigFile, OemConfigFile)
|
||||
}
|
||||
|
||||
files := append(CloudConfigDirFiles(), CloudConfigFile)
|
||||
files := CloudConfigDirFiles(dirPrefix)
|
||||
files = append(files, path.Join(dirPrefix, CloudConfigFile))
|
||||
additionalCfgs, _ := readConfigs(nil, true, false, files...)
|
||||
|
||||
return util.Merge(rawCfg, additionalCfgs)
|
||||
}
|
||||
|
||||
func loadRawConfig() map[interface{}]interface{} {
|
||||
rawCfg := loadRawDiskConfig(true)
|
||||
func loadRawConfig(dirPrefix string, full bool) map[interface{}]interface{} {
|
||||
rawCfg := loadRawDiskConfig(dirPrefix, full)
|
||||
rawCfg = util.Merge(rawCfg, readCmdline())
|
||||
rawCfg = applyDebugFlags(rawCfg)
|
||||
return mergeMetadata(rawCfg, readMetadata())
|
||||
}
|
||||
|
||||
func LoadConfig() *CloudConfig {
|
||||
rawCfg := loadRawConfig()
|
||||
return LoadConfigWithPrefix("")
|
||||
}
|
||||
|
||||
func LoadConfigWithPrefix(dirPrefix string) *CloudConfig {
|
||||
rawCfg := loadRawConfig(dirPrefix, true)
|
||||
|
||||
cfg := &CloudConfig{}
|
||||
if err := util.Convert(rawCfg, cfg); err != nil {
|
||||
@ -63,8 +68,10 @@ func LoadConfig() *CloudConfig {
|
||||
return cfg
|
||||
}
|
||||
|
||||
func CloudConfigDirFiles() []string {
|
||||
files, err := ioutil.ReadDir(CloudConfigDir)
|
||||
func CloudConfigDirFiles(dirPrefix string) []string {
|
||||
cloudConfigDir := path.Join(dirPrefix, CloudConfigDir)
|
||||
|
||||
files, err := ioutil.ReadDir(cloudConfigDir)
|
||||
if err != nil {
|
||||
if os.IsNotExist(err) {
|
||||
// do nothing
|
||||
@ -78,7 +85,7 @@ func CloudConfigDirFiles() []string {
|
||||
var finalFiles []string
|
||||
for _, file := range files {
|
||||
if !file.IsDir() && !strings.HasPrefix(file.Name(), ".") {
|
||||
finalFiles = append(finalFiles, path.Join(CloudConfigDir, file.Name()))
|
||||
finalFiles = append(finalFiles, path.Join(cloudConfigDir, file.Name()))
|
||||
}
|
||||
}
|
||||
|
||||
@ -176,9 +183,6 @@ func amendNils(c *CloudConfig) *CloudConfig {
|
||||
if t.Rancher.Environment == nil {
|
||||
t.Rancher.Environment = map[string]string{}
|
||||
}
|
||||
if t.Rancher.Autoformat == nil {
|
||||
t.Rancher.Autoformat = map[string]*composeConfig.ServiceConfigV1{}
|
||||
}
|
||||
if t.Rancher.BootstrapContainers == nil {
|
||||
t.Rancher.BootstrapContainers = map[string]*composeConfig.ServiceConfigV1{}
|
||||
}
|
||||
@ -199,7 +203,6 @@ func amendNils(c *CloudConfig) *CloudConfig {
|
||||
|
||||
func amendContainerNames(c *CloudConfig) *CloudConfig {
|
||||
for _, scm := range []map[string]*composeConfig.ServiceConfigV1{
|
||||
c.Rancher.Autoformat,
|
||||
c.Rancher.BootstrapContainers,
|
||||
c.Rancher.Services,
|
||||
} {
|
||||
|
@ -41,12 +41,20 @@ func generateEngineOptsSlice(opts EngineOpts) []string {
|
||||
optsSlice = append(optsSlice, fmt.Sprintf("--%s=false", optTag))
|
||||
}
|
||||
}
|
||||
case []string:
|
||||
for _, elem := range value {
|
||||
if elem != "" {
|
||||
optsSlice = append(optsSlice, fmt.Sprintf("--%s", optTag), elem)
|
||||
}
|
||||
}
|
||||
case map[string]string:
|
||||
for k, v := range value {
|
||||
if v != "" {
|
||||
optsSlice = append(optsSlice, fmt.Sprintf("--%s", optTag), fmt.Sprintf("%s=%s", k, v))
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return optsSlice
|
||||
}
|
||||
|
@ -18,6 +18,20 @@ func TestGenerateEngineOptsString(t *testing.T) {
|
||||
if len(generateEngineOptsSlice(EngineOpts{})) != 0 {
|
||||
t.Fail()
|
||||
}
|
||||
if len(generateEngineOptsSlice(EngineOpts{
|
||||
Host: []string{
|
||||
"",
|
||||
},
|
||||
})) != 0 {
|
||||
t.Fail()
|
||||
}
|
||||
if len(generateEngineOptsSlice(EngineOpts{
|
||||
LogOpts: map[string]string{
|
||||
"max-file": "",
|
||||
},
|
||||
})) != 0 {
|
||||
t.Fail()
|
||||
}
|
||||
|
||||
testContains(t, fmt.Sprint(generateEngineOptsSlice(EngineOpts{
|
||||
Bridge: "bridge",
|
||||
@ -30,6 +44,13 @@ func TestGenerateEngineOptsString(t *testing.T) {
|
||||
SelinuxEnabled: &[]bool{false}[0],
|
||||
})), "--selinux-enabled=false")
|
||||
|
||||
testContains(t, fmt.Sprint(generateEngineOptsSlice(EngineOpts{
|
||||
Host: []string{
|
||||
"unix:///var/run/system-docker.sock",
|
||||
"unix:///var/run/docker.sock",
|
||||
},
|
||||
})), "--host unix:///var/run/system-docker.sock", "--host unix:///var/run/docker.sock")
|
||||
|
||||
testContains(t, fmt.Sprint(generateEngineOptsSlice(EngineOpts{
|
||||
LogOpts: map[string]string{
|
||||
"max-size": "25m",
|
||||
|
200
config/schema.go
Normal file
@ -0,0 +1,200 @@
|
||||
package config
|
||||
|
||||
var schema = `{
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
|
||||
"properties": {
|
||||
"ssh_authorized_keys": {"$ref": "#/definitions/list_of_strings"},
|
||||
"write_files": {
|
||||
"type": "array",
|
||||
"items": {"$ref": "#/definitions/file_config"}
|
||||
},
|
||||
"hostname": {"type": "string"},
|
||||
"mounts": {"type": "array"},
|
||||
"rancher": {"$ref": "#/definitions/rancher_config"},
|
||||
"runcmd": {"type": "array"},
|
||||
"bootcmd": {"type": "array"}
|
||||
},
|
||||
|
||||
"definitions": {
|
||||
"rancher_config": {
|
||||
"id": "#/definitions/rancher_config",
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
|
||||
"properties": {
|
||||
"console": {"type": "string"},
|
||||
"environment": {"type": "object"},
|
||||
"cloud_init_services": {"type": "object"},
|
||||
"services": {"type": "object"},
|
||||
"bootstrap": {"type": "object"},
|
||||
"autoformat": {"type": "object"},
|
||||
"bootstrap_docker": {"$ref": "#/definitions/docker_config"},
|
||||
"cloud_init": {"$ref": "#/definitions/cloud_init_config"},
|
||||
"debug": {"type": "boolean"},
|
||||
"rm_usr": {"type": "boolean"},
|
||||
"no_sharedroot": {"type": "boolean"},
|
||||
"log": {"type": "boolean"},
|
||||
"force_console_rebuild": {"type": "boolean"},
|
||||
"disable": {"$ref": "#/definitions/list_of_strings"},
|
||||
"services_include": {"type": "object"},
|
||||
"modules": {"$ref": "#/definitions/list_of_strings"},
|
||||
"network": {"$ref": "#/definitions/network_config"},
|
||||
"default_network": {"type": "object"},
|
||||
"repositories": {"type": "object"},
|
||||
"ssh": {"$ref": "#/definitions/ssh_config"},
|
||||
"state": {"$ref": "#/definitions/state_config"},
|
||||
"system_docker": {"$ref": "#/definitions/docker_config"},
|
||||
"upgrade": {"$ref": "#/definitions/upgrade_config"},
|
||||
"docker": {"$ref": "#/definitions/docker_config"},
|
||||
"registry_auths": {"type": "object"},
|
||||
"defaults": {"$ref": "#/definitions/defaults_config"},
|
||||
"resize_device": {"type": "string"},
|
||||
"sysctl": {"type": "object"},
|
||||
"restart_services": {"type": "array"}
|
||||
}
|
||||
},
|
||||
|
||||
"file_config": {
|
||||
"id": "#/definitions/file_config",
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
|
||||
"properties": {
|
||||
"encoding": {"type": "string"},
|
||||
"container": {"type": "string"},
|
||||
"content": {"type": "string"},
|
||||
"owner": {"type": "string"},
|
||||
"path": {"type": "string"},
|
||||
"permissions": {"type": "string"}
|
||||
}
|
||||
},
|
||||
|
||||
"network_config": {
|
||||
"id": "#/definitions/network_config",
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
|
||||
"properties": {
|
||||
"pre_cmds": {"$ref": "#/definitions/list_of_strings"},
|
||||
"dns": {"type": "object"},
|
||||
"interfaces": {"type": "object"},
|
||||
"post_cmds": {"$ref": "#/definitions/list_of_strings"},
|
||||
"http_proxy": {"type": "string"},
|
||||
"https_proxy": {"type": "string"},
|
||||
"no_proxy": {"type": "string"}
|
||||
}
|
||||
},
|
||||
|
||||
"upgrade_config": {
|
||||
"id": "#/definitions/upgrade_config",
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
|
||||
"properties": {
|
||||
"url": {"type": "string"},
|
||||
"image": {"type": "string"},
|
||||
"rollback": {"type": "string"}
|
||||
}
|
||||
},
|
||||
|
||||
"docker_config": {
|
||||
"id": "#/definitions/docker_config",
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
|
||||
"properties": {
|
||||
"engine": {"type": "string"},
|
||||
"tls": {"type": "boolean"},
|
||||
"tls_args": {"$ref": "#/definitions/list_of_strings"},
|
||||
"args": {"$ref": "#/definitions/list_of_strings"},
|
||||
"extra_args": {"$ref": "#/definitions/list_of_strings"},
|
||||
"server_cert": {"type": "string"},
|
||||
"server_key": {"type": "string"},
|
||||
"ca_cert": {"type": "string"},
|
||||
"ca_key": {"type": "string"},
|
||||
"environment": {"$ref": "#/definitions/list_of_strings"},
|
||||
"storage_context": {"type": "string"},
|
||||
"exec": {"type": ["boolean", "null"]},
|
||||
"bridge": {"type": "string"},
|
||||
"config_file": {"type": "string"},
|
||||
"containerd": {"type": "string"},
|
||||
"debug": {"type": ["boolean", "null"]},
|
||||
"exec_root": {"type": "string"},
|
||||
"group": {"type": "string"},
|
||||
"graph": {"type": "string"},
|
||||
"host": {"type": "array"},
|
||||
"live_restore": {"type": ["boolean", "null"]},
|
||||
"log_driver": {"type": "string"},
|
||||
"log_opts": {"type": "object"},
|
||||
"pid_file": {"type": "string"},
|
||||
"registry_mirror": {"type": "string"},
|
||||
"restart": {"type": ["boolean", "null"]},
|
||||
"selinux_enabled": {"type": ["boolean", "null"]},
|
||||
"storage_driver": {"type": "string"},
|
||||
"userland_proxy": {"type": ["boolean", "null"]},
|
||||
"insecure_registry": {"$ref": "#/definitions/list_of_strings"}
|
||||
}
|
||||
},
|
||||
|
||||
"ssh_config": {
|
||||
"id": "#/definitions/ssh_config",
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
|
||||
"properties": {
|
||||
"keys": {"type": "object"}
|
||||
}
|
||||
},
|
||||
|
||||
"state_config": {
|
||||
"id": "#/definitions/state_config",
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
|
||||
"properties": {
|
||||
"directory": {"type": "string"},
|
||||
"fstype": {"type": "string"},
|
||||
"dev": {"type": "string"},
|
||||
"wait": {"type": "boolean"},
|
||||
"required": {"type": "boolean"},
|
||||
"autoformat": {"$ref": "#/definitions/list_of_strings"},
|
||||
"mdadm_scan": {"type": "boolean"},
|
||||
"script": {"type": "string"},
|
||||
"oem_fstype": {"type": "string"},
|
||||
"oem_dev": {"type": "string"}
|
||||
}
|
||||
},
|
||||
|
||||
"cloud_init_config": {
|
||||
"id": "#/definitions/cloud_init_config",
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
|
||||
"properties": {
|
||||
"datasources": {"$ref": "#/definitions/list_of_strings"}
|
||||
}
|
||||
},
|
||||
|
||||
"defaults_config": {
|
||||
"id": "#/definitions/defaults_config",
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
|
||||
"properties": {
|
||||
"hostname": {"type": "string"},
|
||||
"docker": {"type": "object"},
|
||||
"network": {"$ref": "#/definitions/network_config"}
|
||||
}
|
||||
},
|
||||
|
||||
"list_of_strings": {
|
||||
"type": "array",
|
||||
"items": {"type": "string"},
|
||||
"uniqueItems": true
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
`
|
132
config/types.go
@ -7,35 +7,34 @@ import (
|
||||
"github.com/coreos/coreos-cloudinit/config"
|
||||
"github.com/docker/engine-api/types"
|
||||
composeConfig "github.com/docker/libcompose/config"
|
||||
"github.com/rancher/netconf"
|
||||
"github.com/rancher/os/config/yaml"
|
||||
)
|
||||
|
||||
const (
|
||||
OEM = "/usr/share/ros/oem"
|
||||
DOCKER_BIN = "/usr/bin/docker"
|
||||
DOCKER_DIST_BIN = "/usr/bin/docker.dist"
|
||||
ROS_BIN = "/usr/bin/ros"
|
||||
SYSINIT_BIN = "/usr/bin/ros-sysinit"
|
||||
DOCKER_SYSTEM_HOME = "/var/lib/system-docker"
|
||||
DOCKER_SYSTEM_HOST = "unix:///var/run/system-docker.sock"
|
||||
DOCKER_HOST = "unix:///var/run/docker.sock"
|
||||
IMAGES_PATH = "/usr/share/ros"
|
||||
IMAGES_PATTERN = "images*.tar"
|
||||
MODULES_ARCHIVE = "/modules.tar"
|
||||
DEBUG = false
|
||||
SYSTEM_DOCKER_LOG = "/var/log/system-docker.log"
|
||||
SYSTEM_DOCKER_BIN = "/usr/bin/system-docker"
|
||||
DockerBin = "/usr/bin/docker"
|
||||
DockerDistBin = "/usr/bin/docker.dist"
|
||||
RosBin = "/usr/bin/ros"
|
||||
SysInitBin = "/usr/bin/ros-sysinit"
|
||||
SystemDockerHome = "/var/lib/system-docker"
|
||||
SystemDockerHost = "unix:///var/run/system-docker.sock"
|
||||
DockerHost = "unix:///var/run/docker.sock"
|
||||
ImagesPath = "/usr/share/ros"
|
||||
ImagesPattern = "images*.tar"
|
||||
ModulesArchive = "/modules.tar"
|
||||
Debug = false
|
||||
SystemDockerLog = "/var/log/system-docker.log"
|
||||
SystemDockerBin = "/usr/bin/system-docker"
|
||||
|
||||
LABEL = "label"
|
||||
HASH = "io.rancher.os.hash"
|
||||
ID = "io.rancher.os.id"
|
||||
DETACH = "io.rancher.os.detach"
|
||||
CREATE_ONLY = "io.rancher.os.createonly"
|
||||
RELOAD_CONFIG = "io.rancher.os.reloadconfig"
|
||||
CONSOLE = "io.rancher.os.console"
|
||||
SCOPE = "io.rancher.os.scope"
|
||||
REBUILD = "io.docker.compose.rebuild"
|
||||
SYSTEM = "system"
|
||||
HashLabel = "io.rancher.os.hash"
|
||||
IDLabel = "io.rancher.os.id"
|
||||
DetachLabel = "io.rancher.os.detach"
|
||||
CreateOnlyLabel = "io.rancher.os.createonly"
|
||||
ReloadConfigLabel = "io.rancher.os.reloadconfig"
|
||||
ConsoleLabel = "io.rancher.os.console"
|
||||
ScopeLabel = "io.rancher.os.scope"
|
||||
RebuildLabel = "io.docker.compose.rebuild"
|
||||
System = "system"
|
||||
|
||||
OsConfigFile = "/usr/share/ros/os-config.yml"
|
||||
CloudConfigDir = "/var/lib/rancher/conf/cloud-config.d"
|
||||
@ -48,11 +47,11 @@ const (
|
||||
|
||||
var (
|
||||
OemConfigFile = OEM + "/oem-config.yml"
|
||||
VERSION string
|
||||
ARCH string
|
||||
SUFFIX string
|
||||
OS_REPO string
|
||||
OS_BASE string
|
||||
Version string
|
||||
Arch string
|
||||
Suffix string
|
||||
OsRepo string
|
||||
OsBase string
|
||||
PrivateKeys = []string{
|
||||
"rancher.ssh",
|
||||
"rancher.docker.ca_key",
|
||||
@ -63,22 +62,22 @@ var (
|
||||
)
|
||||
|
||||
func init() {
|
||||
if VERSION == "" {
|
||||
VERSION = "v0.0.0-dev"
|
||||
if Version == "" {
|
||||
Version = "v0.0.0-dev"
|
||||
}
|
||||
if ARCH == "" {
|
||||
ARCH = runtime.GOARCH
|
||||
if Arch == "" {
|
||||
Arch = runtime.GOARCH
|
||||
}
|
||||
if SUFFIX == "" && ARCH != "amd64" {
|
||||
SUFFIX = "_" + ARCH
|
||||
if Suffix == "" && Arch != "amd64" {
|
||||
Suffix = "_" + Arch
|
||||
}
|
||||
if OS_BASE == "" {
|
||||
OS_BASE = fmt.Sprintf("%s/os-base:%s%s", OS_REPO, VERSION, SUFFIX)
|
||||
if OsBase == "" {
|
||||
OsBase = fmt.Sprintf("%s/os-base:%s%s", OsRepo, Version, Suffix)
|
||||
}
|
||||
}
|
||||
|
||||
type Repository struct {
|
||||
Url string `yaml:"url,omitempty"`
|
||||
URL string `yaml:"url,omitempty"`
|
||||
}
|
||||
|
||||
type Repositories map[string]Repository
|
||||
@ -89,7 +88,8 @@ type CloudConfig struct {
|
||||
Hostname string `yaml:"hostname"`
|
||||
Mounts [][]string `yaml:"mounts,omitempty"`
|
||||
Rancher RancherConfig `yaml:"rancher,omitempty"`
|
||||
Runcmd [][]string `yaml:"runcmd,omitempty"`
|
||||
Runcmd []yaml.StringandSlice `yaml:"runcmd,omitempty"`
|
||||
Bootcmd []yaml.StringandSlice `yaml:"bootcmd,omitempty"`
|
||||
}
|
||||
|
||||
type File struct {
|
||||
@ -102,7 +102,7 @@ type RancherConfig struct {
|
||||
Environment map[string]string `yaml:"environment,omitempty"`
|
||||
Services map[string]*composeConfig.ServiceConfigV1 `yaml:"services,omitempty"`
|
||||
BootstrapContainers map[string]*composeConfig.ServiceConfigV1 `yaml:"bootstrap,omitempty"`
|
||||
Autoformat map[string]*composeConfig.ServiceConfigV1 `yaml:"autoformat,omitempty"`
|
||||
CloudInitServices map[string]*composeConfig.ServiceConfigV1 `yaml:"cloud_init_services,omitempty"`
|
||||
BootstrapDocker DockerConfig `yaml:"bootstrap_docker,omitempty"`
|
||||
CloudInit CloudInit `yaml:"cloud_init,omitempty"`
|
||||
Debug bool `yaml:"debug,omitempty"`
|
||||
@ -113,10 +113,10 @@ type RancherConfig struct {
|
||||
Disable []string `yaml:"disable,omitempty"`
|
||||
ServicesInclude map[string]bool `yaml:"services_include,omitempty"`
|
||||
Modules []string `yaml:"modules,omitempty"`
|
||||
Network netconf.NetworkConfig `yaml:"network,omitempty"`
|
||||
DefaultNetwork netconf.NetworkConfig `yaml:"default_network,omitempty"`
|
||||
Network NetworkConfig `yaml:"network,omitempty"`
|
||||
DefaultNetwork NetworkConfig `yaml:"default_network,omitempty"`
|
||||
Repositories Repositories `yaml:"repositories,omitempty"`
|
||||
Ssh SshConfig `yaml:"ssh,omitempty"`
|
||||
SSH SSHConfig `yaml:"ssh,omitempty"`
|
||||
State StateConfig `yaml:"state,omitempty"`
|
||||
SystemDocker DockerConfig `yaml:"system_docker,omitempty"`
|
||||
Upgrade UpgradeConfig `yaml:"upgrade,omitempty"`
|
||||
@ -129,7 +129,7 @@ type RancherConfig struct {
|
||||
}
|
||||
|
||||
type UpgradeConfig struct {
|
||||
Url string `yaml:"url,omitempty"`
|
||||
URL string `yaml:"url,omitempty"`
|
||||
Image string `yaml:"image,omitempty"`
|
||||
Rollback string `yaml:"rollback,omitempty"`
|
||||
}
|
||||
@ -142,7 +142,8 @@ type EngineOpts struct {
|
||||
ExecRoot string `yaml:"exec_root,omitempty" opt:"exec-root"`
|
||||
Group string `yaml:"group,omitempty" opt:"group"`
|
||||
Graph string `yaml:"graph,omitempty" opt:"graph"`
|
||||
Host string `yaml:"host,omitempty" opt:"host"`
|
||||
Host []string `yaml:"host,omitempty" opt:"host"`
|
||||
InsecureRegistry []string `yaml:"insecure_registry" opt:"insecure-registry"`
|
||||
LiveRestore *bool `yaml:"live_restore,omitempty" opt:"live-restore"`
|
||||
LogDriver string `yaml:"log_driver,omitempty" opt:"log-driver"`
|
||||
LogOpts map[string]string `yaml:"log_opts,omitempty" opt:"log-opt"`
|
||||
@ -169,7 +170,40 @@ type DockerConfig struct {
|
||||
Exec bool `yaml:"exec,omitempty"`
|
||||
}
|
||||
|
||||
type SshConfig struct {
|
||||
type NetworkConfig struct {
|
||||
PreCmds []string `yaml:"pre_cmds,omitempty"`
|
||||
DNS DNSConfig `yaml:"dns,omitempty"`
|
||||
Interfaces map[string]InterfaceConfig `yaml:"interfaces,omitempty"`
|
||||
PostCmds []string `yaml:"post_cmds,omitempty"`
|
||||
HTTPProxy string `yaml:"http_proxy,omitempty"`
|
||||
HTTPSProxy string `yaml:"https_proxy,omitempty"`
|
||||
NoProxy string `yaml:"no_proxy,omitempty"`
|
||||
}
|
||||
|
||||
type InterfaceConfig struct {
|
||||
Match string `yaml:"match,omitempty"`
|
||||
DHCP bool `yaml:"dhcp,omitempty"`
|
||||
DHCPArgs string `yaml:"dhcp_args,omitempty"`
|
||||
Address string `yaml:"address,omitempty"`
|
||||
Addresses []string `yaml:"addresses,omitempty"`
|
||||
IPV4LL bool `yaml:"ipv4ll,omitempty"`
|
||||
Gateway string `yaml:"gateway,omitempty"`
|
||||
GatewayIpv6 string `yaml:"gateway_ipv6,omitempty"`
|
||||
MTU int `yaml:"mtu,omitempty"`
|
||||
Bridge string `yaml:"bridge,omitempty"`
|
||||
Bond string `yaml:"bond,omitempty"`
|
||||
BondOpts map[string]string `yaml:"bond_opts,omitempty"`
|
||||
PostUp []string `yaml:"post_up,omitempty"`
|
||||
PreUp []string `yaml:"pre_up,omitempty"`
|
||||
Vlans string `yaml:"vlans,omitempty"`
|
||||
}
|
||||
|
||||
type DNSConfig struct {
|
||||
Nameservers []string `yaml:"nameservers,flow,omitempty"`
|
||||
Search []string `yaml:"search,flow,omitempty"`
|
||||
}
|
||||
|
||||
type SSHConfig struct {
|
||||
Keys map[string]string `yaml:"keys,omitempty"`
|
||||
}
|
||||
|
||||
@ -193,14 +227,14 @@ type CloudInit struct {
|
||||
type Defaults struct {
|
||||
Hostname string `yaml:"hostname,omitempty"`
|
||||
Docker DockerConfig `yaml:"docker,omitempty"`
|
||||
Network netconf.NetworkConfig `yaml:"network,omitempty"`
|
||||
Network NetworkConfig `yaml:"network,omitempty"`
|
||||
}
|
||||
|
||||
func (r Repositories) ToArray() []string {
|
||||
result := make([]string, 0, len(r))
|
||||
for _, repo := range r {
|
||||
if repo.Url != "" {
|
||||
result = append(result, repo.Url)
|
||||
if repo.URL != "" {
|
||||
result = append(result, repo.URL)
|
||||
}
|
||||
}
|
||||
|
||||
|
43
config/validate.go
Normal file
@ -0,0 +1,43 @@
|
||||
package config
|
||||
|
||||
import (
|
||||
yaml "github.com/cloudfoundry-incubator/candiedyaml"
|
||||
"github.com/xeipuuv/gojsonschema"
|
||||
)
|
||||
|
||||
// ConvertKeysToStrings is temporarily copied from libcompose
|
||||
// TODO: just import this in the future
|
||||
func ConvertKeysToStrings(item interface{}) interface{} {
|
||||
switch typedDatas := item.(type) {
|
||||
case map[string]interface{}:
|
||||
for key, value := range typedDatas {
|
||||
typedDatas[key] = ConvertKeysToStrings(value)
|
||||
}
|
||||
return typedDatas
|
||||
case map[interface{}]interface{}:
|
||||
newMap := make(map[string]interface{})
|
||||
for key, value := range typedDatas {
|
||||
stringKey := key.(string)
|
||||
newMap[stringKey] = ConvertKeysToStrings(value)
|
||||
}
|
||||
return newMap
|
||||
case []interface{}:
|
||||
for i, value := range typedDatas {
|
||||
typedDatas[i] = ConvertKeysToStrings(value)
|
||||
}
|
||||
return typedDatas
|
||||
default:
|
||||
return item
|
||||
}
|
||||
}
|
||||
|
||||
func Validate(bytes []byte) (*gojsonschema.Result, error) {
|
||||
var rawCfg map[string]interface{}
|
||||
if err := yaml.Unmarshal([]byte(bytes), &rawCfg); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
rawCfg = ConvertKeysToStrings(rawCfg).(map[string]interface{})
|
||||
loader := gojsonschema.NewGoLoader(rawCfg)
|
||||
schemaLoader := gojsonschema.NewStringLoader(schema)
|
||||
return gojsonschema.Validate(schemaLoader, loader)
|
||||
}
|
53
config/validate_test.go
Normal file
@ -0,0 +1,53 @@
|
||||
package config
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"strings"
|
||||
"testing"
|
||||
|
||||
yaml "github.com/cloudfoundry-incubator/candiedyaml"
|
||||
"github.com/rancher/os/util"
|
||||
)
|
||||
|
||||
func testValidate(t *testing.T, cfg []byte, contains string) {
|
||||
validationErrors, err := Validate(cfg)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if contains == "" && len(validationErrors.Errors()) != 0 {
|
||||
t.Fail()
|
||||
}
|
||||
if !strings.Contains(fmt.Sprint(validationErrors.Errors()), contains) {
|
||||
t.Fail()
|
||||
}
|
||||
}
|
||||
|
||||
func TestValidate(t *testing.T) {
|
||||
testValidate(t, []byte("{}"), "")
|
||||
testValidate(t, []byte(`rancher:
|
||||
log: true`), "")
|
||||
testValidate(t, []byte(`write_files:
|
||||
- container: console
|
||||
path: /etc/rc.local
|
||||
permissions: "0755"
|
||||
owner: root
|
||||
content: |
|
||||
#!/bin/bash
|
||||
wait-for-docker`), "")
|
||||
testValidate(t, []byte(`rancher:
|
||||
docker:
|
||||
extra_args: ['--insecure-registry', 'my.registry.com']`), "")
|
||||
|
||||
testValidate(t, []byte("bad_key: {}"), "Additional property bad_key is not allowed")
|
||||
testValidate(t, []byte("rancher: []"), "rancher: Invalid type. Expected: object, given: array")
|
||||
|
||||
var fullConfig map[string]interface{}
|
||||
if err := util.ConvertIgnoreOmitEmpty(CloudConfig{}, &fullConfig); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
fullConfigBytes, err := yaml.Marshal(fullConfig)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
testValidate(t, fullConfigBytes, "")
|
||||
}
|
44
config/yaml/command.go
Normal file
@ -0,0 +1,44 @@
|
||||
package yaml
|
||||
|
||||
import "fmt"
|
||||
|
||||
// StringandSlice stores either a string or slice depending on original type
|
||||
// Differs from libcompose Stringorslice by being able to determine original type
|
||||
type StringandSlice struct {
|
||||
StringValue string
|
||||
SliceValue []string
|
||||
}
|
||||
|
||||
// UnmarshalYAML implements the Unmarshaller interface.
|
||||
// TODO: this needs to be ported to go-yaml
|
||||
func (s *StringandSlice) UnmarshalYAML(tag string, value interface{}) error {
|
||||
switch value := value.(type) {
|
||||
case []interface{}:
|
||||
parts, err := toStrings(value)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
s.SliceValue = parts
|
||||
case string:
|
||||
s.StringValue = value
|
||||
default:
|
||||
return fmt.Errorf("Failed to unmarshal StringandSlice: %#v", value)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// TODO: use this function from libcompose
|
||||
func toStrings(s []interface{}) ([]string, error) {
|
||||
if len(s) == 0 {
|
||||
return nil, nil
|
||||
}
|
||||
r := make([]string, len(s))
|
||||
for k, v := range s {
|
||||
if sv, ok := v.(string); ok {
|
||||
r[k] = sv
|
||||
} else {
|
||||
return nil, fmt.Errorf("Cannot unmarshal '%v' of type %T into a string value", v, v)
|
||||
}
|
||||
}
|
||||
return r, nil
|
||||
}
|
@ -1,5 +1,6 @@
|
||||
// +build linux
|
||||
package dockerlaunch
|
||||
|
||||
package dfs
|
||||
|
||||
import (
|
||||
"os"
|
@ -1,4 +1,4 @@
|
||||
package dockerlaunch
|
||||
package dfs
|
||||
|
||||
import (
|
||||
"bufio"
|
||||
@ -11,11 +11,12 @@ import (
|
||||
"strings"
|
||||
"syscall"
|
||||
|
||||
log "github.com/Sirupsen/logrus"
|
||||
"github.com/docker/libnetwork/resolvconf"
|
||||
"github.com/rancher/docker-from-scratch/selinux"
|
||||
"github.com/rancher/docker-from-scratch/util"
|
||||
"github.com/rancher/netconf"
|
||||
"github.com/rancher/os/config"
|
||||
"github.com/rancher/os/log"
|
||||
"github.com/rancher/os/netconf"
|
||||
"github.com/rancher/os/selinux"
|
||||
"github.com/rancher/os/util"
|
||||
)
|
||||
|
||||
const (
|
||||
@ -45,7 +46,7 @@ type Config struct {
|
||||
Fork bool
|
||||
PidOne bool
|
||||
CommandName string
|
||||
DnsConfig netconf.DnsConfig
|
||||
DNSConfig config.DNSConfig
|
||||
BridgeName string
|
||||
BridgeAddress string
|
||||
BridgeMtu int
|
||||
@ -208,10 +209,9 @@ func execDocker(config *Config, docker, cmd string, args []string) (*exec.Cmd, e
|
||||
PidOne()
|
||||
}
|
||||
return cmd, err
|
||||
} else {
|
||||
err := syscall.Exec(expand(docker), append([]string{cmd}, args...), env)
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return nil, syscall.Exec(expand(docker), append([]string{cmd}, args...), env)
|
||||
}
|
||||
|
||||
func copyDefault(folder, name string) error {
|
||||
@ -333,8 +333,8 @@ func createGroup() error {
|
||||
return tryCreateFile("/etc/group", "root:x:0:\n")
|
||||
}
|
||||
|
||||
func setupNetworking(config *Config) error {
|
||||
if config == nil {
|
||||
func setupNetworking(cfg *Config) error {
|
||||
if cfg == nil {
|
||||
return nil
|
||||
}
|
||||
|
||||
@ -351,19 +351,19 @@ ff02::2 ip6-allrouters
|
||||
|
||||
127.0.1.1 `+hostname)
|
||||
|
||||
if len(config.DnsConfig.Nameservers) != 0 {
|
||||
if _, err := resolvconf.Build("/etc/resolv.conf", config.DnsConfig.Nameservers, config.DnsConfig.Search, nil); err != nil {
|
||||
if len(cfg.DNSConfig.Nameservers) != 0 {
|
||||
if _, err := resolvconf.Build("/etc/resolv.conf", cfg.DNSConfig.Nameservers, cfg.DNSConfig.Search, nil); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
if config.BridgeName != "" && config.BridgeName != "none" {
|
||||
log.Debugf("Creating bridge %s (%s)", config.BridgeName, config.BridgeAddress)
|
||||
if err := netconf.ApplyNetworkConfigs(&netconf.NetworkConfig{
|
||||
Interfaces: map[string]netconf.InterfaceConfig{
|
||||
config.BridgeName: {
|
||||
Address: config.BridgeAddress,
|
||||
MTU: config.BridgeMtu,
|
||||
if cfg.BridgeName != "" && cfg.BridgeName != "none" {
|
||||
log.Debugf("Creating bridge %s (%s)", cfg.BridgeName, cfg.BridgeAddress)
|
||||
if err := netconf.ApplyNetworkConfigs(&config.NetworkConfig{
|
||||
Interfaces: map[string]config.InterfaceConfig{
|
||||
cfg.BridgeName: {
|
||||
Address: cfg.BridgeAddress,
|
||||
MTU: cfg.BridgeMtu,
|
||||
Bridge: "true",
|
||||
},
|
||||
},
|
||||
@ -375,23 +375,35 @@ ff02::2 ip6-allrouters
|
||||
return nil
|
||||
}
|
||||
|
||||
func GetValue(index int, args []string) string {
|
||||
val := args[index]
|
||||
parts := strings.SplitN(val, "=", 2)
|
||||
if len(parts) == 1 {
|
||||
if len(args) > index+1 {
|
||||
return args[index+1]
|
||||
}
|
||||
return ""
|
||||
}
|
||||
return parts[1]
|
||||
}
|
||||
|
||||
func ParseConfig(config *Config, args ...string) []string {
|
||||
for i, arg := range args {
|
||||
if strings.HasPrefix(arg, "--bip") {
|
||||
config.BridgeAddress = util.GetValue(i, args)
|
||||
config.BridgeAddress = GetValue(i, args)
|
||||
} else if strings.HasPrefix(arg, "--fixed-cidr") {
|
||||
config.BridgeAddress = util.GetValue(i, args)
|
||||
config.BridgeAddress = GetValue(i, args)
|
||||
} else if strings.HasPrefix(arg, "-b") || strings.HasPrefix(arg, "--bridge") {
|
||||
config.BridgeName = util.GetValue(i, args)
|
||||
config.BridgeName = GetValue(i, args)
|
||||
} else if strings.HasPrefix(arg, "--config-file") {
|
||||
config.DaemonConfig = util.GetValue(i, args)
|
||||
config.DaemonConfig = GetValue(i, args)
|
||||
} else if strings.HasPrefix(arg, "--mtu") {
|
||||
mtu, err := strconv.Atoi(util.GetValue(i, args))
|
||||
mtu, err := strconv.Atoi(GetValue(i, args))
|
||||
if err != nil {
|
||||
config.BridgeMtu = mtu
|
||||
}
|
||||
} else if strings.HasPrefix(arg, "-g") || strings.HasPrefix(arg, "--graph") {
|
||||
config.GraphDirectory = util.GetValue(i, args)
|
||||
config.GraphDirectory = GetValue(i, args)
|
||||
}
|
||||
}
|
||||
|
||||
@ -454,7 +466,7 @@ func touchSockets(args ...string) error {
|
||||
|
||||
for i, arg := range args {
|
||||
if strings.HasPrefix(arg, "-H") {
|
||||
val := util.GetValue(i, args)
|
||||
val := GetValue(i, args)
|
||||
if strings.HasPrefix(val, "unix://") {
|
||||
val = val[len("unix://"):]
|
||||
log.Debugf("Creating temp file at %s", val)
|
||||
@ -682,6 +694,7 @@ func LaunchDocker(config *Config, docker string, args ...string) (*exec.Cmd, err
|
||||
}
|
||||
|
||||
func Main() {
|
||||
log.InitLogger()
|
||||
if os.Getenv("DOCKER_LAUNCH_DEBUG") == "true" {
|
||||
log.SetLevel(log.DebugLevel)
|
||||
}
|
@ -5,11 +5,11 @@ import (
|
||||
"fmt"
|
||||
"strings"
|
||||
|
||||
log "github.com/Sirupsen/logrus"
|
||||
"github.com/docker/docker/registry"
|
||||
"github.com/docker/engine-api/types"
|
||||
"github.com/docker/libcompose/docker"
|
||||
"github.com/rancher/os/config"
|
||||
"github.com/rancher/os/log"
|
||||
)
|
||||
|
||||
// ConfigAuthLookup will lookup registry auth info from cloud config
|
||||
|
@ -7,11 +7,11 @@ import (
|
||||
)
|
||||
|
||||
func NewSystemClient() (dockerClient.APIClient, error) {
|
||||
return NewClient(config.DOCKER_SYSTEM_HOST)
|
||||
return NewClient(config.SystemDockerHost)
|
||||
}
|
||||
|
||||
func NewDefaultClient() (dockerClient.APIClient, error) {
|
||||
return NewClient(config.DOCKER_HOST)
|
||||
return NewClient(config.DockerHost)
|
||||
}
|
||||
|
||||
func NewClient(endpoint string) (dockerClient.APIClient, error) {
|
||||
|
@ -6,11 +6,11 @@ import (
|
||||
|
||||
"golang.org/x/net/context"
|
||||
|
||||
log "github.com/Sirupsen/logrus"
|
||||
dockerclient "github.com/docker/engine-api/client"
|
||||
composeClient "github.com/docker/libcompose/docker/client"
|
||||
"github.com/docker/libcompose/project"
|
||||
"github.com/rancher/os/config"
|
||||
"github.com/rancher/os/log"
|
||||
"github.com/rancher/os/util"
|
||||
)
|
||||
|
||||
@ -25,8 +25,8 @@ func NewClientFactory(opts composeClient.Options) (project.ClientFactory, error)
|
||||
userOpts := opts
|
||||
systemOpts := opts
|
||||
|
||||
userOpts.Host = config.DOCKER_HOST
|
||||
systemOpts.Host = config.DOCKER_SYSTEM_HOST
|
||||
userOpts.Host = config.DockerHost
|
||||
systemOpts.Host = config.SystemDockerHost
|
||||
|
||||
userClient, err := composeClient.Create(userOpts)
|
||||
if err != nil {
|
||||
@ -46,11 +46,11 @@ func NewClientFactory(opts composeClient.Options) (project.ClientFactory, error)
|
||||
|
||||
func (c *ClientFactory) Create(service project.Service) dockerclient.APIClient {
|
||||
if IsSystemContainer(service.Config()) {
|
||||
waitFor(&c.systemOnce, c.systemClient, config.DOCKER_SYSTEM_HOST)
|
||||
waitFor(&c.systemOnce, c.systemClient, config.SystemDockerHost)
|
||||
return c.systemClient
|
||||
}
|
||||
|
||||
waitFor(&c.userOnce, c.userClient, config.DOCKER_HOST)
|
||||
waitFor(&c.userOnce, c.userClient, config.DockerHost)
|
||||
return c.userClient
|
||||
}
|
||||
|
||||
|
@ -2,10 +2,13 @@ package docker
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"io/ioutil"
|
||||
"strings"
|
||||
|
||||
composeConfig "github.com/docker/libcompose/config"
|
||||
"github.com/rancher/os/config"
|
||||
|
||||
log "github.com/Sirupsen/logrus"
|
||||
)
|
||||
|
||||
type ConfigEnvironment struct {
|
||||
@ -29,18 +32,24 @@ func appendEnv(array []string, key, value string) []string {
|
||||
|
||||
func environmentFromCloudConfig(cfg *config.CloudConfig) map[string]string {
|
||||
environment := cfg.Rancher.Environment
|
||||
if cfg.Rancher.Network.HttpProxy != "" {
|
||||
environment["http_proxy"] = cfg.Rancher.Network.HttpProxy
|
||||
environment["HTTP_PROXY"] = cfg.Rancher.Network.HttpProxy
|
||||
if cfg.Rancher.Network.HTTPProxy != "" {
|
||||
environment["http_proxy"] = cfg.Rancher.Network.HTTPProxy
|
||||
environment["HTTP_PROXY"] = cfg.Rancher.Network.HTTPProxy
|
||||
}
|
||||
if cfg.Rancher.Network.HttpsProxy != "" {
|
||||
environment["https_proxy"] = cfg.Rancher.Network.HttpsProxy
|
||||
environment["HTTPS_PROXY"] = cfg.Rancher.Network.HttpsProxy
|
||||
if cfg.Rancher.Network.HTTPSProxy != "" {
|
||||
environment["https_proxy"] = cfg.Rancher.Network.HTTPSProxy
|
||||
environment["HTTPS_PROXY"] = cfg.Rancher.Network.HTTPSProxy
|
||||
}
|
||||
if cfg.Rancher.Network.NoProxy != "" {
|
||||
environment["no_proxy"] = cfg.Rancher.Network.NoProxy
|
||||
environment["NO_PROXY"] = cfg.Rancher.Network.NoProxy
|
||||
}
|
||||
b, err := ioutil.ReadFile("/proc/version")
|
||||
if err == nil {
|
||||
elem := strings.Split(string(b), " ")
|
||||
environment["KERNEL_VERSION"] = elem[2]
|
||||
log.Debugf("Using /proc/version to set rancher.environment.KERNEL_VERSION = %s", elem[2])
|
||||
}
|
||||
return environment
|
||||
}
|
||||
|
||||
|
@ -3,7 +3,6 @@ package docker
|
||||
import (
|
||||
"fmt"
|
||||
|
||||
"github.com/Sirupsen/logrus"
|
||||
dockerclient "github.com/docker/engine-api/client"
|
||||
"github.com/docker/engine-api/types"
|
||||
composeConfig "github.com/docker/libcompose/config"
|
||||
@ -11,6 +10,7 @@ import (
|
||||
"github.com/docker/libcompose/project"
|
||||
"github.com/docker/libcompose/project/options"
|
||||
"github.com/rancher/os/config"
|
||||
"github.com/rancher/os/log"
|
||||
"golang.org/x/net/context"
|
||||
)
|
||||
|
||||
@ -41,9 +41,7 @@ func (s *Service) DependentServices() []project.ServiceRelationship {
|
||||
}
|
||||
|
||||
if s.requiresUserDocker() {
|
||||
// Linking to cloud-init is a hack really. The problem is we need to link to something
|
||||
// that will trigger a reload
|
||||
rels = appendLink(rels, "cloud-init", false, s.project)
|
||||
rels = appendLink(rels, "docker", false, s.project)
|
||||
} else if s.missingImage() {
|
||||
rels = appendLink(rels, "network", false, s.project)
|
||||
}
|
||||
@ -65,7 +63,7 @@ func (s *Service) requiresSyslog() bool {
|
||||
}
|
||||
|
||||
func (s *Service) requiresUserDocker() bool {
|
||||
return s.Config().Labels[config.SCOPE] != config.SYSTEM
|
||||
return s.Config().Labels[config.ScopeLabel] != config.System
|
||||
}
|
||||
|
||||
func appendLink(deps []project.ServiceRelationship, name string, optional bool, p *project.Project) []project.ServiceRelationship {
|
||||
@ -95,10 +93,10 @@ func (s *Service) shouldRebuild(ctx context.Context) (bool, error) {
|
||||
}
|
||||
name := containerInfo.Name[1:]
|
||||
|
||||
origRebuildLabel := containerInfo.Config.Labels[config.REBUILD]
|
||||
newRebuildLabel := s.Config().Labels[config.REBUILD]
|
||||
origRebuildLabel := containerInfo.Config.Labels[config.RebuildLabel]
|
||||
newRebuildLabel := s.Config().Labels[config.RebuildLabel]
|
||||
rebuildLabelChanged := newRebuildLabel != origRebuildLabel
|
||||
logrus.WithFields(logrus.Fields{
|
||||
log.WithFields(log.Fields{
|
||||
"origRebuildLabel": origRebuildLabel,
|
||||
"newRebuildLabel": newRebuildLabel,
|
||||
"rebuildLabelChanged": rebuildLabelChanged,
|
||||
@ -115,15 +113,15 @@ func (s *Service) shouldRebuild(ctx context.Context) (bool, error) {
|
||||
}
|
||||
if outOfSync {
|
||||
if s.Name() == "console" {
|
||||
origConsoleLabel := containerInfo.Config.Labels[config.CONSOLE]
|
||||
newConsoleLabel := s.Config().Labels[config.CONSOLE]
|
||||
origConsoleLabel := containerInfo.Config.Labels[config.ConsoleLabel]
|
||||
newConsoleLabel := s.Config().Labels[config.ConsoleLabel]
|
||||
if newConsoleLabel != origConsoleLabel {
|
||||
return true, nil
|
||||
}
|
||||
} else if rebuildLabelChanged || origRebuildLabel != "false" {
|
||||
return true, nil
|
||||
} else {
|
||||
logrus.Warnf("%s needs rebuilding", name)
|
||||
log.Warnf("%s needs rebuilding", name)
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -142,7 +140,7 @@ func (s *Service) Up(ctx context.Context, options options.Up) error {
|
||||
return err
|
||||
}
|
||||
if shouldRebuild {
|
||||
logrus.Infof("Rebuilding %s", s.Name())
|
||||
log.Infof("Rebuilding %s", s.Name())
|
||||
cs, err := s.Service.Containers(ctx)
|
||||
if err != nil {
|
||||
return err
|
||||
@ -156,13 +154,13 @@ func (s *Service) Up(ctx context.Context, options options.Up) error {
|
||||
return err
|
||||
}
|
||||
}
|
||||
if labels[config.CREATE_ONLY] == "true" {
|
||||
if labels[config.CreateOnlyLabel] == "true" {
|
||||
return s.checkReload(labels)
|
||||
}
|
||||
if err := s.Service.Up(ctx, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if labels[config.DETACH] == "false" {
|
||||
if labels[config.DetachLabel] == "false" {
|
||||
if err := s.wait(ctx); err != nil {
|
||||
return err
|
||||
}
|
||||
@ -172,7 +170,7 @@ func (s *Service) Up(ctx context.Context, options options.Up) error {
|
||||
}
|
||||
|
||||
func (s *Service) checkReload(labels map[string]string) error {
|
||||
if labels[config.RELOAD_CONFIG] == "true" {
|
||||
if labels[config.ReloadConfigLabel] == "true" {
|
||||
return project.ErrRestart
|
||||
}
|
||||
return nil
|
||||
@ -223,9 +221,8 @@ func (s *Service) rename(ctx context.Context) error {
|
||||
}
|
||||
|
||||
if len(info.Name) > 0 && info.Name[1:] != s.Name() {
|
||||
logrus.Debugf("Renaming container %s => %s", info.Name[1:], s.Name())
|
||||
log.Debugf("Renaming container %s => %s", info.Name[1:], s.Name())
|
||||
return client.ContainerRename(context.Background(), info.ID, s.Name())
|
||||
} else {
|
||||
return nil
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
@ -15,11 +15,17 @@ type ServiceFactory struct {
|
||||
func (s *ServiceFactory) Create(project *project.Project, name string, serviceConfig *composeConfig.ServiceConfig) (project.Service, error) {
|
||||
if after := serviceConfig.Labels["io.rancher.os.after"]; after != "" {
|
||||
for _, dep := range util.TrimSplit(after, ",") {
|
||||
if dep == "cloud-init" {
|
||||
dep = "cloud-init-execute"
|
||||
}
|
||||
s.Deps[name] = append(s.Deps[name], dep)
|
||||
}
|
||||
}
|
||||
if before := serviceConfig.Labels["io.rancher.os.before"]; before != "" {
|
||||
for _, dep := range util.TrimSplit(before, ",") {
|
||||
if dep == "cloud-init" {
|
||||
dep = "cloud-init-execute"
|
||||
}
|
||||
s.Deps[dep] = append(s.Deps[dep], name)
|
||||
}
|
||||
}
|
||||
|
@ -6,6 +6,5 @@ import (
|
||||
)
|
||||
|
||||
func IsSystemContainer(serviceConfig *composeConfig.ServiceConfig) bool {
|
||||
return serviceConfig.Labels[config.SCOPE] == config.SYSTEM
|
||||
|
||||
return serviceConfig.Labels[config.ScopeLabel] == config.System
|
||||
}
|
||||
|
7
docs/Gemfile
Normal file
@ -0,0 +1,7 @@
|
||||
source 'https://rubygems.org'
|
||||
|
||||
require 'json'
|
||||
require 'open-uri'
|
||||
versions = JSON.parse(open('https://pages.github.com/versions.json').read)
|
||||
|
||||
gem 'github-pages'
|
131
docs/Gemfile.lock
Normal file
@ -0,0 +1,131 @@
|
||||
GEM
|
||||
remote: https://rubygems.org/
|
||||
specs:
|
||||
RedCloth (4.2.9)
|
||||
activesupport (4.2.5)
|
||||
i18n (~> 0.7)
|
||||
json (~> 1.7, >= 1.7.7)
|
||||
minitest (~> 5.1)
|
||||
thread_safe (~> 0.3, >= 0.3.4)
|
||||
tzinfo (~> 1.1)
|
||||
addressable (2.3.8)
|
||||
coffee-script (2.4.1)
|
||||
coffee-script-source
|
||||
execjs
|
||||
coffee-script-source (1.10.0)
|
||||
colorator (0.1)
|
||||
ethon (0.8.0)
|
||||
ffi (>= 1.3.0)
|
||||
execjs (2.6.0)
|
||||
faraday (0.9.2)
|
||||
multipart-post (>= 1.2, < 3)
|
||||
ffi (1.9.10)
|
||||
gemoji (2.1.0)
|
||||
github-pages (51)
|
||||
RedCloth (= 4.2.9)
|
||||
github-pages-health-check (= 1.0.1)
|
||||
jekyll (= 3.0.3)
|
||||
jekyll-coffeescript (= 1.0.1)
|
||||
jekyll-feed (= 0.4.0)
|
||||
jekyll-gist (= 1.4.0)
|
||||
jekyll-mentions (= 1.0.1)
|
||||
jekyll-paginate (= 1.1.0)
|
||||
jekyll-redirect-from (= 0.9.1)
|
||||
jekyll-sass-converter (= 1.3.0)
|
||||
jekyll-seo-tag (= 1.2.0)
|
||||
jekyll-sitemap (= 0.10.0)
|
||||
jekyll-textile-converter (= 0.1.0)
|
||||
jemoji (= 0.5.1)
|
||||
kramdown (= 1.9.0)
|
||||
liquid (= 3.0.6)
|
||||
mercenary (~> 0.3)
|
||||
rdiscount (= 2.1.8)
|
||||
redcarpet (= 3.3.3)
|
||||
rouge (= 1.10.1)
|
||||
terminal-table (~> 1.4)
|
||||
github-pages-health-check (1.0.1)
|
||||
addressable (~> 2.3)
|
||||
net-dns (~> 0.8)
|
||||
octokit (~> 4.0)
|
||||
public_suffix (~> 1.4)
|
||||
typhoeus (~> 0.7)
|
||||
html-pipeline (2.3.0)
|
||||
activesupport (>= 2, < 5)
|
||||
nokogiri (>= 1.4)
|
||||
i18n (0.7.0)
|
||||
jekyll (3.0.3)
|
||||
colorator (~> 0.1)
|
||||
jekyll-sass-converter (~> 1.0)
|
||||
jekyll-watch (~> 1.1)
|
||||
kramdown (~> 1.3)
|
||||
liquid (~> 3.0)
|
||||
mercenary (~> 0.3.3)
|
||||
rouge (~> 1.7)
|
||||
safe_yaml (~> 1.0)
|
||||
jekyll-coffeescript (1.0.1)
|
||||
coffee-script (~> 2.2)
|
||||
jekyll-feed (0.4.0)
|
||||
jekyll-gist (1.4.0)
|
||||
octokit (~> 4.2)
|
||||
jekyll-mentions (1.0.1)
|
||||
html-pipeline (~> 2.3)
|
||||
jekyll (~> 3.0)
|
||||
jekyll-paginate (1.1.0)
|
||||
jekyll-redirect-from (0.9.1)
|
||||
jekyll (>= 2.0)
|
||||
jekyll-sass-converter (1.3.0)
|
||||
sass (~> 3.2)
|
||||
jekyll-seo-tag (1.2.0)
|
||||
jekyll (>= 2.0)
|
||||
jekyll-sitemap (0.10.0)
|
||||
jekyll-textile-converter (0.1.0)
|
||||
RedCloth (~> 4.0)
|
||||
jekyll-watch (1.3.0)
|
||||
listen (~> 3.0)
|
||||
jemoji (0.5.1)
|
||||
gemoji (~> 2.0)
|
||||
html-pipeline (~> 2.2)
|
||||
jekyll (>= 2.0)
|
||||
json (1.8.1)
|
||||
kramdown (1.9.0)
|
||||
liquid (3.0.6)
|
||||
listen (3.0.4)
|
||||
rb-fsevent (>= 0.9.3)
|
||||
rb-inotify (>= 0.9)
|
||||
mercenary (0.3.5)
|
||||
mini_portile (0.6.2)
|
||||
minitest (5.8.2)
|
||||
multipart-post (2.0.0)
|
||||
net-dns (0.8.0)
|
||||
nokogiri (1.6.6.2)
|
||||
mini_portile (~> 0.6.0)
|
||||
octokit (4.2.0)
|
||||
sawyer (~> 0.6.0, >= 0.5.3)
|
||||
public_suffix (1.5.2)
|
||||
rb-fsevent (0.9.6)
|
||||
rb-inotify (0.9.5)
|
||||
ffi (>= 0.5.0)
|
||||
rdiscount (2.1.8)
|
||||
redcarpet (3.3.3)
|
||||
rouge (1.10.1)
|
||||
safe_yaml (1.0.4)
|
||||
sass (3.4.19)
|
||||
sawyer (0.6.0)
|
||||
addressable (~> 2.3.5)
|
||||
faraday (~> 0.8, < 0.10)
|
||||
terminal-table (1.5.2)
|
||||
thread_safe (0.3.5)
|
||||
typhoeus (0.8.0)
|
||||
ethon (>= 0.8.0)
|
||||
tzinfo (1.2.2)
|
||||
thread_safe (~> 0.1)
|
||||
|
||||
PLATFORMS
|
||||
ruby
|
||||
|
||||
DEPENDENCIES
|
||||
github-pages
|
||||
json
|
||||
|
||||
BUNDLED WITH
|
||||
1.11.2
|
20
docs/README.md
Normal file
@ -0,0 +1,20 @@
|
||||
# Documentation for the `master` version of `rancher/os`
|
||||
|
||||
This dir is _not_ the documentation for any released version of RancherOS.
|
||||
You can find that at the [Rancher Labs Documentation site](https://docs.rancher.com) and
|
||||
specifically for [RancherOS](https://docs.rancher.com/os/).
|
||||
|
||||
When there are Pull Requests to the `rancher/os` repository that affect the user (or developer),
|
||||
then it should include changes to the documenation in this directory.
|
||||
|
||||
When we make a new release of RancherOS, the `docs/os` dir will be copied into the `rancher/rancher.github.io`
|
||||
repository to be accessible by users.
|
||||
|
||||
## Previewing your changes
|
||||
|
||||
You can either build and view your docs locally by running `make docs`, or you can
|
||||
set your fork of the `rancher/os` repository to render your `master` using `GitHub Pages`.
|
||||
|
||||
To set up `GitHub Pages`, browse to your fork, then to the `Settings` - under `GitHub Pages`, set the `Source`
|
||||
to `master branch /docs folder` and hit the `Save` button. GitHub will tell you the URL at which the
|
||||
documenation can be read.
|
16
docs/_config.yml
Normal file
@ -0,0 +1,16 @@
|
||||
name: Rancher Documentation
|
||||
description: Documentation for Rancher
|
||||
|
||||
|
||||
#URL: http://rancher.github.io
|
||||
baseurl: ""
|
||||
|
||||
markdown: kramdown
|
||||
highlighter: rouge
|
||||
kramdown:
|
||||
input: GFM
|
||||
syntax_highlighter: rouge
|
||||
permalink: pretty
|
||||
|
||||
gems:
|
||||
- jekyll-redirect-from
|
142
docs/_includes/os-sidebar.html
Normal file
@ -0,0 +1,142 @@
|
||||
<div class="sidebar-nav">
|
||||
<div class="navbar navbar-inverse" role="navigation">
|
||||
|
||||
<!-- Brand and Toggle get grouped for better mobile display -->
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
|
||||
<span class="sr-only">Toggle navigation</span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<a class="navbar-brand" href="http://rancher.com/rancher-os/"><img src="{{site.baseurl}}/img/rancheros-logo-horiz-wht.svg"></a>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
|
||||
<div>
|
||||
<!--Start Google Search-->
|
||||
<script>
|
||||
(function() {
|
||||
var cx = '007896692384436596364:60akf3bfmxm';
|
||||
var gcse = document.createElement('script');
|
||||
gcse.type = 'text/javascript';
|
||||
gcse.async = true;
|
||||
gcse.src = (document.location.protocol == 'https:' ? 'https:' : 'http:') +
|
||||
'//cse.google.com/cse.js?cx=' + cx;
|
||||
var s = document.getElementsByTagName('script')[0];
|
||||
s.parentNode.insertBefore(gcse, s);
|
||||
})();
|
||||
</script>
|
||||
<gcse:search></gcse:search>
|
||||
<!--End Google Search-->
|
||||
</div>
|
||||
|
||||
<!-- Collect the nav links, forms, and other content for toggling -->
|
||||
<div class="navbar-collapse collapse" >
|
||||
<ul class="nav navbar-nav" id="mainmenu">
|
||||
<li><a href="{{site.baseurl}}/os/">Overview</a></li>
|
||||
<li><a href="{{site.baseurl}}/os/quick-start-guide/">Quick Start Guide</a></li>
|
||||
<li class="panel">
|
||||
<a href="#running-rancheros" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">
|
||||
<!--OLD HREF => {{site.baseurl}}/os/running-rancheros/-->
|
||||
Running RancherOS <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="running-rancheros">
|
||||
<li class="panel">
|
||||
<a href="#workstation" data-toggle="collapse" class="collapsed" data-parent="#running-rancheros">Workstation <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse" id="workstation">
|
||||
<li><a href="{{site.baseurl}}/os/running-rancheros/workstation/docker-machine/">Docker Machine</a></li>
|
||||
<li><a href="{{site.baseurl}}/os/running-rancheros/workstation/boot-from-iso/">Boot from ISO</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#cloud" data-toggle="collapse" class="collapsed" data-parent="#running-rancheros">Cloud <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse" id="cloud">
|
||||
<li><a href="{{site.baseurl}}/os/running-rancheros/cloud/aws/">AWS</a></li>
|
||||
<li><a href="{{site.baseurl}}/os/running-rancheros/cloud/gce/">GCE</a></li>
|
||||
<!--<li><a href="{{site.baseurl}}/os/running-rancheros/cloud/do/">DigitalOcean</a></li>-->
|
||||
<li><a href="{{site.baseurl}}/os/running-rancheros/cloud/openstack/">Openstack</a></li>
|
||||
<li><a href="{{site.baseurl}}/os/running-rancheros/cloud/azure/">Azure</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#virtual-server" data-toggle="collapse" class="collapsed" data-parent="#running-rancheros">Bare metal and Virtual Server <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse" id="virtual-server">
|
||||
<li><a href="{{site.baseurl}}/os/running-rancheros/server/install-to-disk/">Install to Disk</a></li>
|
||||
<li><a href="{{site.baseurl}}/os/running-rancheros/server/pxe/">PXE</a></li>
|
||||
<li><a href="{{site.baseurl}}/os/running-rancheros/server/raspberry-pi/">Raspberry Pi</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#configuration" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Configuration <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="configuration">
|
||||
<li><a href="{{site.baseurl}}/os/configuration/">Configuring RancherOS</a></li>
|
||||
<li><a href="{{site.baseurl}}/os/configuration/ssh-keys/">SSH Keys</a></li>
|
||||
<li><a href="{{site.baseurl}}/os/configuration/write-files/">Writing Files</a></li>
|
||||
<li><a href="{{site.baseurl}}/os/configuration/running-commands/">Running Commands</a></li>
|
||||
<li><a href="{{site.baseurl}}/os/configuration/hostname/">Setting the Hostname</a></li>
|
||||
<li><a href="{{site.baseurl}}/os/configuration/custom-console/">Custom Console</a></li>
|
||||
<li><a href="{{site.baseurl}}/os/configuration/docker/">Configuring Docker or System Docker</a></li>
|
||||
<li><a href="{{site.baseurl}}/os/configuration/setting-up-docker-tls/">Setting up Docker TLS</a></li>
|
||||
<li><a href="{{site.baseurl}}/os/configuration/private-registries/">Private Registries</a></li>
|
||||
<li><a href="{{site.baseurl}}/os/configuration/switching-docker-versions/">Switching Docker Versions</a></li>
|
||||
<li><a href="{{site.baseurl}}/os/configuration/users/">Users</a></li>
|
||||
<li><a href="{{site.baseurl}}/os/configuration/resizing-device-partition/">Resizing a Device Partition</a></li>
|
||||
<li><a href="{{site.baseurl}}/os/configuration/sysctl/">sysctl Settings</a></li>
|
||||
<li><a href="{{site.baseurl}}/os/configuration/loading-kernel-modules/">Loading kernel modules</a></li>
|
||||
<li><a href="{{site.baseurl}}/os/configuration/kernel-modules-kernel-headers/">Install kernel modules that require kernel headers</a></li>
|
||||
<li><a href="{{site.baseurl}}/os/configuration/dkms/">DKMS</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#systemservices" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">System Services<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="systemservices">
|
||||
<li><a href="{{site.baseurl}}/os/system-services/adding-system-services/">System Services</a></li>
|
||||
<li><a href="{{site.baseurl}}/os/system-services/built-in-system-services/">Built-in System Services</a></li>
|
||||
<li><a href="{{site.baseurl}}/os/system-services/custom-system-services/">Custom Services</a></li>
|
||||
<li><a href="{{site.baseurl}}/os/system-services/system-docker-volumes/">System Docker Volumes</a></li>
|
||||
<li><a href="{{site.baseurl}}/os/system-services/environment/">Environment</a></li>
|
||||
</ul>
|
||||
<li class="panel">
|
||||
<a href="#bootprocess" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Boot Process<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="bootprocess">
|
||||
<li><a href="{{site.baseurl}}/os/boot-process/built-in-system-services/">Built-in System Services</a></li>
|
||||
<li><a href="{{site.baseurl}}/os/boot-process/cloud-init">Cloud-init</a></li>
|
||||
<li><a href="{{site.baseurl}}/os/boot-process/image-preloading">Image Preloading</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#storage" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Storage<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="storage">
|
||||
<li><a href="{{site.baseurl}}/os/storage/state-partition">State Partition</a></li>
|
||||
<li><a href="{{site.baseurl}}/os/storage/additional-mounts/">Additional Mounts</a></li>
|
||||
<li><a href="{{site.baseurl}}/os/storage/using-zfs/">Using ZFS</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#networking" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Networking<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="networking">
|
||||
<li><a href="{{site.baseurl}}/os/networking/interfaces/">Interfaces</a></li>
|
||||
<li><a href="{{site.baseurl}}/os/networking/dns/">DNS</a></li>
|
||||
<li><a href="{{site.baseurl}}/os/networking/proxy-settings/">Proxy Settings</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#custombuilds" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Custom Builds<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="custombuilds">
|
||||
<li><a href="{{site.baseurl}}/os/custom-builds/custom-rancheros-iso/">Custom RancherOS ISO</a></li>
|
||||
<li><a href="{{site.baseurl}}/os/custom-builds/custom-kernels/">Custom Kernels</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="{{site.baseurl}}/os/upgrading/">Upgrading</a></li>
|
||||
<li><a href="{{site.baseurl}}/os/amazon-ecs/">Amazon ECS</a></li>
|
||||
<li><a href="{{site.baseurl}}/os/contributing/">Contributing to RancherOS</a></li>
|
||||
<li><a href="{{site.baseurl}}/os/running-rancher-on-rancheros/">Tips on using Rancher with RancherOS</a></li>
|
||||
</ul><!-- /.navbar-nav -->
|
||||
</div><!-- /.navbar-collapse -->
|
||||
|
||||
|
||||
</div> <!-- /.navbar-inverse -->
|
||||
</div> <!-- /.sidebar-nav -->
|
615
docs/_includes/rancher-api-sidebar-v1.0.html
Normal file
@ -0,0 +1,615 @@
|
||||
<div class="sidebar-nav">
|
||||
|
||||
<div class="navbar navbar-inverse" role="navigation">
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
|
||||
<span class="sr-only">Toggle navigation</span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<a class="navbar-brand" href="http://rancher.com/"><img src="{{site.baseurl}}/img/rancher-logo-nopadding.svg"></a>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
|
||||
<div>
|
||||
<!--Start Google Search-->
|
||||
<script>
|
||||
(function() {
|
||||
var cx = '007896692384436596364:60akf3bfmxm';
|
||||
var gcse = document.createElement('script');
|
||||
gcse.type = 'text/javascript';
|
||||
gcse.async = true;
|
||||
gcse.src = (document.location.protocol == 'https:' ? 'https:' : 'http:') +
|
||||
'//cse.google.com/cse.js?cx=' + cx;
|
||||
var s = document.getElementsByTagName('script')[0];
|
||||
s.parentNode.insertBefore(gcse, s);
|
||||
})();
|
||||
</script>
|
||||
<gcse:search></gcse:search>
|
||||
<!--End Google Search-->
|
||||
</div>
|
||||
<!-- Collect the nav links, forms, and other content for toggling -->
|
||||
<div class="navbar-collapse collapse">
|
||||
<ul class="nav navbar-nav" id="mainmenu">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/" data-toggle="refresh">Rancher Documentation</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/">How to use the API</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-keys/">What are API keys</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/">API Resources</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/common/">Common Resource Fields</a></li>
|
||||
<li class="panel">
|
||||
<a href="#account" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Account <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="account">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/account/" data-toggle="refresh">Account</a></li>
|
||||
|
||||
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/account/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/account/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#addOutputsInput" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">AddOutputsInput <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="addOutputsInput">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/addOutputsInput/" data-toggle="refresh">AddOutputsInput</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#amazonec2Config" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Amazonec2Config <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="amazonec2Config">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/amazonec2Config/" data-toggle="refresh">Amazonec2Config</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/amazonec2Config/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#apiKey" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">ApiKey <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="apiKey">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/apiKey/" data-toggle="refresh">ApiKey</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/apiKey/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/apiKey/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/apiKey/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/apiKey/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/apiKey/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#auditLog" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">AuditLog <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="auditLog">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/auditLog/" data-toggle="refresh">AuditLog</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#azureConfig" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">AzureConfig <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="azureConfig">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/azureConfig/" data-toggle="refresh">AzureConfig</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/azureConfig/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#certificate" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Certificate <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="certificate">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/certificate/" data-toggle="refresh">Certificate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/certificate/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/certificate/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/certificate/#delete" data-toggle="refresh">Delete</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#container" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Container <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="container">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/" data-toggle="refresh">Container</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#console" data-toggle="refresh">Console</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#execute" data-toggle="refresh">Execute</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#logs" data-toggle="refresh">Logs</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#proxy" data-toggle="refresh">Proxy</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#restart" data-toggle="refresh">Restart</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#start" data-toggle="refresh">Start</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#stop" data-toggle="refresh">Stop</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#containerExec" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">ContainerExec <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="containerExec">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/containerExec/" data-toggle="refresh">ContainerExec</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/containerExec/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#digitaloceanConfig" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">DigitaloceanConfig <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="digitaloceanConfig">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/digitaloceanConfig/" data-toggle="refresh">DigitaloceanConfig</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/digitaloceanConfig/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#dnsService" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">DnsService <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="dnsService">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/" data-toggle="refresh">DnsService</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/#removeservicelink" data-toggle="refresh">Removeservicelink</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/#rollback" data-toggle="refresh">Rollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/#setservicelinks" data-toggle="refresh">Setservicelinks</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/#upgrade" data-toggle="refresh">Upgrade</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#dockerBuild" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">DockerBuild <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="dockerBuild">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dockerBuild/" data-toggle="refresh">DockerBuild</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dockerBuild/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#environment" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Environment <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="environment">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/" data-toggle="refresh">Environment</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#activateservices" data-toggle="refresh">Activateservices</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#cancelrollback" data-toggle="refresh">Cancelrollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#cancelupgrade" data-toggle="refresh">Cancelupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#deactivateservices" data-toggle="refresh">Deactivateservices</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#exportconfig" data-toggle="refresh">Exportconfig</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#finishupgrade" data-toggle="refresh">Finishupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#rollback" data-toggle="refresh">Rollback</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#environmentUpgrade" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">EnvironmentUpgrade <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="environmentUpgrade">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environmentUpgrade/" data-toggle="refresh">EnvironmentUpgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environmentUpgrade/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#exoscaleConfig" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">ExoscaleConfig <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="exoscaleConfig">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/exoscaleConfig/" data-toggle="refresh">ExoscaleConfig</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/exoscaleConfig/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#externalService" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">ExternalService <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="externalService">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/" data-toggle="refresh">ExternalService</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#cancelrollback" data-toggle="refresh">Cancelrollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#cancelupgrade" data-toggle="refresh">Cancelupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#finishupgrade" data-toggle="refresh">Finishupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#rollback" data-toggle="refresh">Rollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#upgrade" data-toggle="refresh">Upgrade</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#genericConfig" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">GenericConfig <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="genericConfig">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/genericConfig/" data-toggle="refresh">GenericConfig</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/genericConfig/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#googleConfig" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">GoogleConfig <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="googleConfig">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/googleConfig/" data-toggle="refresh">GoogleConfig</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/googleConfig/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#healthcheckInstanceHostMap" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">HealthcheckInstanceHostMap <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="healthcheckInstanceHostMap">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/healthcheckInstanceHostMap/" data-toggle="refresh">HealthcheckInstanceHostMap</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#host" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Host <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="host">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/host/" data-toggle="refresh">Host</a></li>
|
||||
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/host/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/host/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/host/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/host/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/host/#dockersocket" data-toggle="refresh">Dockersocket</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#hostAccess" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">HostAccess <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="hostAccess">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/hostAccess/" data-toggle="refresh">HostAccess</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#hypervConfig" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">HypervConfig <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="hypervConfig">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/hypervConfig/" data-toggle="refresh">HypervConfig</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/hypervConfig/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#identity" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Identity <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="identity">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/identity/" data-toggle="refresh">Identity</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#loadBalancerConfig" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">LoadBalancerConfig <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="loadBalancerConfig">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerConfig/" data-toggle="refresh">LoadBalancerConfig</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerConfig/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerConfig/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerConfig/#delete" data-toggle="refresh">Delete</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#loadBalancerService" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">LoadBalancerService <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="loadBalancerService">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/" data-toggle="refresh">LoadBalancerService</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#addservicelink" data-toggle="refresh">Addservicelink</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#cancelrollback" data-toggle="refresh">Cancelrollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#cancelupgrade" data-toggle="refresh">Cancelupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#finishupgrade" data-toggle="refresh">Finishupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#removeservicelink" data-toggle="refresh">Removeservicelink</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#rollback" data-toggle="refresh">Rollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#setservicelinks" data-toggle="refresh">Setservicelinks</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#upgrade" data-toggle="refresh">Upgrade</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#machine" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Machine <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="machine">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/machine/" data-toggle="refresh">Machine</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/machine/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/machine/#delete" data-toggle="refresh">Delete</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#openstackConfig" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">OpenstackConfig <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="openstackConfig">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/openstackConfig/" data-toggle="refresh">OpenstackConfig</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/openstackConfig/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#packetConfig" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">PacketConfig <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="packetConfig">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/packetConfig/" data-toggle="refresh">PacketConfig</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/packetConfig/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#project" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Project <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="project">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/project/" data-toggle="refresh">Project</a></li>
|
||||
|
||||
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/project/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/project/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/project/#setmembers" data-toggle="refresh">Setmembers</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#projectMember" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">ProjectMember <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="projectMember">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/projectMember/" data-toggle="refresh">ProjectMember</a></li>
|
||||
|
||||
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/projectMember/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/projectMember/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#pullTask" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">PullTask <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="pullTask">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/pullTask/" data-toggle="refresh">PullTask</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/pullTask/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#rackspaceConfig" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">RackspaceConfig <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="rackspaceConfig">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/rackspaceConfig/" data-toggle="refresh">RackspaceConfig</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/rackspaceConfig/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#registrationToken" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">RegistrationToken <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="registrationToken">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registrationToken/" data-toggle="refresh">RegistrationToken</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registrationToken/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#registry" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Registry <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="registry">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registry/" data-toggle="refresh">Registry</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registry/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registry/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registry/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registry/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registry/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#registryCredential" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">RegistryCredential <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="registryCredential">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registryCredential/" data-toggle="refresh">RegistryCredential</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registryCredential/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registryCredential/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registryCredential/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registryCredential/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registryCredential/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#service" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Service <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="service">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/" data-toggle="refresh">Service</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#addservicelink" data-toggle="refresh">Addservicelink</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#cancelrollback" data-toggle="refresh">Cancelrollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#cancelupgrade" data-toggle="refresh">Cancelupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#finishupgrade" data-toggle="refresh">Finishupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#removeservicelink" data-toggle="refresh">Removeservicelink</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#restart" data-toggle="refresh">Restart</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#rollback" data-toggle="refresh">Rollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#setservicelinks" data-toggle="refresh">Setservicelinks</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#serviceConsumeMap" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">ServiceConsumeMap <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="serviceConsumeMap">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/serviceConsumeMap/" data-toggle="refresh">ServiceConsumeMap</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#serviceExposeMap" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">ServiceExposeMap <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="serviceExposeMap">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/serviceExposeMap/" data-toggle="refresh">ServiceExposeMap</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#setting" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Setting <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="setting">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/setting/" data-toggle="refresh">Setting</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#softlayerConfig" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">SoftlayerConfig <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="softlayerConfig">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/softlayerConfig/" data-toggle="refresh">SoftlayerConfig</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/softlayerConfig/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#statsAccess" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">StatsAccess <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="statsAccess">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/statsAccess/" data-toggle="refresh">StatsAccess</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#subscribe" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Subscribe <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="subscribe">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/subscribe/" data-toggle="refresh">Subscribe</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/subscribe/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#ubiquityConfig" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">UbiquityConfig <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="ubiquityConfig">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/ubiquityConfig/" data-toggle="refresh">UbiquityConfig</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/ubiquityConfig/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#virtualboxConfig" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">VirtualboxConfig <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="virtualboxConfig">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/virtualboxConfig/" data-toggle="refresh">VirtualboxConfig</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/virtualboxConfig/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#vmwarefusionConfig" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">VmwarefusionConfig <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="vmwarefusionConfig">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/vmwarefusionConfig/" data-toggle="refresh">VmwarefusionConfig</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/vmwarefusionConfig/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#vmwarevcloudairConfig" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">VmwarevcloudairConfig <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="vmwarevcloudairConfig">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/vmwarevcloudairConfig/" data-toggle="refresh">VmwarevcloudairConfig</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/vmwarevcloudairConfig/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#vmwarevsphereConfig" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">VmwarevsphereConfig <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="vmwarevsphereConfig">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/vmwarevsphereConfig/" data-toggle="refresh">VmwarevsphereConfig</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/vmwarevsphereConfig/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#volume" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Volume <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="volume">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/volume/" data-toggle="refresh">Volume</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/volume/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/volume/#delete" data-toggle="refresh">Delete</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
</ul><!-- /.navbar-nav -->
|
||||
</div><!-- /.navbar-collapse -->
|
||||
|
||||
|
||||
</div> <!-- /.navbar-inverse -->
|
||||
</div> <!-- /.sidebar-nav -->
|
532
docs/_includes/rancher-api-sidebar-v1.1.html
Normal file
@ -0,0 +1,532 @@
|
||||
<div class="sidebar-nav">
|
||||
|
||||
<div class="navbar navbar-inverse" role="navigation">
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
|
||||
<span class="sr-only">Toggle navigation</span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<a class="navbar-brand" href="http://rancher.com/"><img src="{{site.baseurl}}/img/rancher-logo-nopadding.svg"></a>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
|
||||
<div>
|
||||
<!--Start Google Search-->
|
||||
<script>
|
||||
(function() {
|
||||
var cx = '007896692384436596364:60akf3bfmxm';
|
||||
var gcse = document.createElement('script');
|
||||
gcse.type = 'text/javascript';
|
||||
gcse.async = true;
|
||||
gcse.src = (document.location.protocol == 'https:' ? 'https:' : 'http:') +
|
||||
'//cse.google.com/cse.js?cx=' + cx;
|
||||
var s = document.getElementsByTagName('script')[0];
|
||||
s.parentNode.insertBefore(gcse, s);
|
||||
})();
|
||||
</script>
|
||||
<gcse:search></gcse:search>
|
||||
<!--End Google Search-->
|
||||
</div>
|
||||
<!-- Collect the nav links, forms, and other content for toggling -->
|
||||
<div class="navbar-collapse collapse">
|
||||
<ul class="nav navbar-nav" id="mainmenu">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/" data-toggle="refresh">Rancher Documentation</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/">How to use the API</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/access-control/">Setting up Access Control using the API</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-keys/">What are API keys</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/">API Resources</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/common/">Common Resource Fields</a></li>
|
||||
<li class="panel">
|
||||
<a href="#account" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Account <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="account">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/account/" data-toggle="refresh">Account</a></li>
|
||||
|
||||
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/account/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/account/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#addOutputsInput" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">AddOutputsInput <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="addOutputsInput">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/addOutputsInput/" data-toggle="refresh">AddOutputsInput</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#amazonec2Config" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Amazonec2Config <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="amazonec2Config">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/amazonec2Config/" data-toggle="refresh">Amazonec2Config</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/amazonec2Config/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#apiKey" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">ApiKey <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="apiKey">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/apiKey/" data-toggle="refresh">ApiKey</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/apiKey/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/apiKey/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/apiKey/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/apiKey/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/apiKey/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#auditLog" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">AuditLog <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="auditLog">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/auditLog/" data-toggle="refresh">AuditLog</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#azureConfig" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">AzureConfig <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="azureConfig">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/azureConfig/" data-toggle="refresh">AzureConfig</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/azureConfig/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#certificate" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Certificate <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="certificate">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/certificate/" data-toggle="refresh">Certificate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/certificate/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/certificate/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/certificate/#delete" data-toggle="refresh">Delete</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#container" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Container <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="container">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/" data-toggle="refresh">Container</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#console" data-toggle="refresh">Console</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#execute" data-toggle="refresh">Execute</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#logs" data-toggle="refresh">Logs</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#proxy" data-toggle="refresh">Proxy</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#restart" data-toggle="refresh">Restart</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#start" data-toggle="refresh">Start</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#stop" data-toggle="refresh">Stop</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#containerExec" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">ContainerExec <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="containerExec">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/containerExec/" data-toggle="refresh">ContainerExec</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/containerExec/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#digitaloceanConfig" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">DigitaloceanConfig <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="digitaloceanConfig">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/digitaloceanConfig/" data-toggle="refresh">DigitaloceanConfig</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/digitaloceanConfig/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#dnsService" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">DnsService <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="dnsService">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/" data-toggle="refresh">DnsService</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/#removeservicelink" data-toggle="refresh">Removeservicelink</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/#rollback" data-toggle="refresh">Rollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/#setservicelinks" data-toggle="refresh">Setservicelinks</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/#upgrade" data-toggle="refresh">Upgrade</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#dockerBuild" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">DockerBuild <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="dockerBuild">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dockerBuild/" data-toggle="refresh">DockerBuild</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dockerBuild/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#environment" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Environment <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="environment">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/" data-toggle="refresh">Environment</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#activateservices" data-toggle="refresh">Activateservices</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#cancelrollback" data-toggle="refresh">Cancelrollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#cancelupgrade" data-toggle="refresh">Cancelupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#deactivateservices" data-toggle="refresh">Deactivateservices</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#exportconfig" data-toggle="refresh">Exportconfig</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#finishupgrade" data-toggle="refresh">Finishupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#rollback" data-toggle="refresh">Rollback</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#environmentUpgrade" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">EnvironmentUpgrade <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="environmentUpgrade">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environmentUpgrade/" data-toggle="refresh">EnvironmentUpgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environmentUpgrade/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#externalService" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">ExternalService <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="externalService">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/" data-toggle="refresh">ExternalService</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#cancelrollback" data-toggle="refresh">Cancelrollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#cancelupgrade" data-toggle="refresh">Cancelupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#finishupgrade" data-toggle="refresh">Finishupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#rollback" data-toggle="refresh">Rollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#upgrade" data-toggle="refresh">Upgrade</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#healthcheckInstanceHostMap" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">HealthcheckInstanceHostMap <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="healthcheckInstanceHostMap">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/healthcheckInstanceHostMap/" data-toggle="refresh">HealthcheckInstanceHostMap</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#host" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Host <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="host">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/host/" data-toggle="refresh">Host</a></li>
|
||||
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/host/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/host/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/host/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/host/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/host/#dockersocket" data-toggle="refresh">Dockersocket</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#hostAccess" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">HostAccess <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="hostAccess">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/hostAccess/" data-toggle="refresh">HostAccess</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#identity" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Identity <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="identity">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/identity/" data-toggle="refresh">Identity</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#loadBalancerConfig" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">LoadBalancerConfig <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="loadBalancerConfig">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerConfig/" data-toggle="refresh">LoadBalancerConfig</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerConfig/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerConfig/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerConfig/#delete" data-toggle="refresh">Delete</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#loadBalancerService" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">LoadBalancerService <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="loadBalancerService">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/" data-toggle="refresh">LoadBalancerService</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#addservicelink" data-toggle="refresh">Addservicelink</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#cancelrollback" data-toggle="refresh">Cancelrollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#cancelupgrade" data-toggle="refresh">Cancelupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#finishupgrade" data-toggle="refresh">Finishupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#removeservicelink" data-toggle="refresh">Removeservicelink</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#rollback" data-toggle="refresh">Rollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#setservicelinks" data-toggle="refresh">Setservicelinks</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#upgrade" data-toggle="refresh">Upgrade</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#machine" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Machine <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="machine">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/machine/" data-toggle="refresh">Machine</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/machine/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/machine/#delete" data-toggle="refresh">Delete</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#machineDriver" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">MachineDriver <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="machineDriver">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/machineDriver/" data-toggle="refresh">MachineDriver</a></li>
|
||||
|
||||
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/machineDriver/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/machineDriver/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/machineDriver/#reactivate" data-toggle="refresh">Reactivate</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#packetConfig" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">PacketConfig <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="packetConfig">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/packetConfig/" data-toggle="refresh">PacketConfig</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/packetConfig/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#project" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Project <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="project">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/project/" data-toggle="refresh">Project</a></li>
|
||||
|
||||
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/project/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/project/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/project/#setmembers" data-toggle="refresh">Setmembers</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#projectMember" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">ProjectMember <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="projectMember">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/projectMember/" data-toggle="refresh">ProjectMember</a></li>
|
||||
|
||||
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/projectMember/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/projectMember/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#pullTask" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">PullTask <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="pullTask">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/pullTask/" data-toggle="refresh">PullTask</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/pullTask/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#registrationToken" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">RegistrationToken <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="registrationToken">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registrationToken/" data-toggle="refresh">RegistrationToken</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registrationToken/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#registry" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Registry <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="registry">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registry/" data-toggle="refresh">Registry</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registry/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registry/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registry/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registry/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registry/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#registryCredential" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">RegistryCredential <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="registryCredential">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registryCredential/" data-toggle="refresh">RegistryCredential</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registryCredential/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registryCredential/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registryCredential/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registryCredential/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registryCredential/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#scalePolicy" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">ScalePolicy <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="scalePolicy">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/scalePolicy/" data-toggle="refresh">ScalePolicy</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#service" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Service <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="service">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/" data-toggle="refresh">Service</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#addservicelink" data-toggle="refresh">Addservicelink</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#cancelrollback" data-toggle="refresh">Cancelrollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#cancelupgrade" data-toggle="refresh">Cancelupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#finishupgrade" data-toggle="refresh">Finishupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#removeservicelink" data-toggle="refresh">Removeservicelink</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#restart" data-toggle="refresh">Restart</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#rollback" data-toggle="refresh">Rollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#setservicelinks" data-toggle="refresh">Setservicelinks</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#serviceConsumeMap" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">ServiceConsumeMap <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="serviceConsumeMap">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/serviceConsumeMap/" data-toggle="refresh">ServiceConsumeMap</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#serviceExposeMap" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">ServiceExposeMap <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="serviceExposeMap">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/serviceExposeMap/" data-toggle="refresh">ServiceExposeMap</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#setting" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Setting <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="setting">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/setting/" data-toggle="refresh">Setting</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#snapshotBackupInput" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">SnapshotBackupInput <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="snapshotBackupInput">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/snapshotBackupInput/" data-toggle="refresh">SnapshotBackupInput</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#statsAccess" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">StatsAccess <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="statsAccess">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/statsAccess/" data-toggle="refresh">StatsAccess</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#subscribe" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Subscribe <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="subscribe">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/subscribe/" data-toggle="refresh">Subscribe</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/subscribe/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#volume" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Volume <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="volume">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/volume/" data-toggle="refresh">Volume</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/volume/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/volume/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/volume/#restorefrombackup" data-toggle="refresh">Restorefrombackup</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/volume/#reverttosnapshot" data-toggle="refresh">Reverttosnapshot</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/volume/#snapshot" data-toggle="refresh">Snapshot</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
</ul><!-- /.navbar-nav -->
|
||||
</div><!-- /.navbar-collapse -->
|
||||
|
||||
|
||||
</div> <!-- /.navbar-inverse -->
|
||||
</div> <!-- /.sidebar-nav -->
|
410
docs/_includes/rancher-api-sidebar-v1.2.html
Normal file
@ -0,0 +1,410 @@
|
||||
<div class="sidebar-nav">
|
||||
|
||||
<div class="navbar navbar-inverse" role="navigation">
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
|
||||
<span class="sr-only">Toggle navigation</span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<a class="navbar-brand" href="http://rancher.com/"><img src="{{site.baseurl}}/img/rancher-logo-nopadding.svg"></a>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
|
||||
<div>
|
||||
<!--Start Google Search-->
|
||||
<script>
|
||||
(function() {
|
||||
var cx = '007896692384436596364:60akf3bfmxm';
|
||||
var gcse = document.createElement('script');
|
||||
gcse.type = 'text/javascript';
|
||||
gcse.async = true;
|
||||
gcse.src = (document.location.protocol == 'https:' ? 'https:' : 'http:') +
|
||||
'//cse.google.com/cse.js?cx=' + cx;
|
||||
var s = document.getElementsByTagName('script')[0];
|
||||
s.parentNode.insertBefore(gcse, s);
|
||||
})();
|
||||
</script>
|
||||
<gcse:search></gcse:search>
|
||||
<!--End Google Search-->
|
||||
</div>
|
||||
<!-- Collect the nav links, forms, and other content for toggling -->
|
||||
<div class="navbar-collapse collapse">
|
||||
<ul class="nav navbar-nav" id="mainmenu">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/" data-toggle="refresh">Rancher Documentation</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/">How to use the API</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/access-control/">Setting up Access Control using the API</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-keys/">What are API keys</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/">API Resources</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/common/">Common Resource Fields</a></li>
|
||||
<li class="panel">
|
||||
<a href="#account" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Account <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="account">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/account/" data-toggle="refresh">Account</a></li>
|
||||
|
||||
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/account/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/account/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#apiKey" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">ApiKey <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="apiKey">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/apiKey/" data-toggle="refresh">ApiKey</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/apiKey/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/apiKey/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/apiKey/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/apiKey/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/apiKey/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#auditLog" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">AuditLog <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="auditLog">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/auditLog/" data-toggle="refresh">AuditLog</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#certificate" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Certificate <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="certificate">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/certificate/" data-toggle="refresh">Certificate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/certificate/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/certificate/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/certificate/#delete" data-toggle="refresh">Delete</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#container" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Container <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="container">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/" data-toggle="refresh">Container</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#console" data-toggle="refresh">Console</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#execute" data-toggle="refresh">Execute</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#logs" data-toggle="refresh">Logs</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#proxy" data-toggle="refresh">Proxy</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#restart" data-toggle="refresh">Restart</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#start" data-toggle="refresh">Start</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#stop" data-toggle="refresh">Stop</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#dnsService" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">DnsService <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="dnsService">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/" data-toggle="refresh">DnsService</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/#removeservicelink" data-toggle="refresh">Removeservicelink</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/#rollback" data-toggle="refresh">Rollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/#setservicelinks" data-toggle="refresh">Setservicelinks</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/#upgrade" data-toggle="refresh">Upgrade</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#environment" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Environment <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="environment">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/" data-toggle="refresh">Environment</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#activateservices" data-toggle="refresh">Activateservices</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#cancelrollback" data-toggle="refresh">Cancelrollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#cancelupgrade" data-toggle="refresh">Cancelupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#deactivateservices" data-toggle="refresh">Deactivateservices</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#exportconfig" data-toggle="refresh">Exportconfig</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#finishupgrade" data-toggle="refresh">Finishupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#rollback" data-toggle="refresh">Rollback</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#externalService" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">ExternalService <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="externalService">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/" data-toggle="refresh">ExternalService</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#cancelrollback" data-toggle="refresh">Cancelrollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#cancelupgrade" data-toggle="refresh">Cancelupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#finishupgrade" data-toggle="refresh">Finishupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#rollback" data-toggle="refresh">Rollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#upgrade" data-toggle="refresh">Upgrade</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#healthcheckInstanceHostMap" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">HealthcheckInstanceHostMap <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="healthcheckInstanceHostMap">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/healthcheckInstanceHostMap/" data-toggle="refresh">HealthcheckInstanceHostMap</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#host" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Host <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="host">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/host/" data-toggle="refresh">Host</a></li>
|
||||
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/host/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/host/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/host/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/host/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/host/#dockersocket" data-toggle="refresh">Dockersocket</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#identity" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Identity <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="identity">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/identity/" data-toggle="refresh">Identity</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#kubernetesStackUpgrade" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">KubernetesStackUpgrade <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="kubernetesStackUpgrade">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/kubernetesStackUpgrade/" data-toggle="refresh">KubernetesStackUpgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/kubernetesStackUpgrade/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#loadBalancerService" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">LoadBalancerService <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="loadBalancerService">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/" data-toggle="refresh">LoadBalancerService</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#addservicelink" data-toggle="refresh">Addservicelink</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#cancelrollback" data-toggle="refresh">Cancelrollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#cancelupgrade" data-toggle="refresh">Cancelupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#finishupgrade" data-toggle="refresh">Finishupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#removeservicelink" data-toggle="refresh">Removeservicelink</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#rollback" data-toggle="refresh">Rollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#setservicelinks" data-toggle="refresh">Setservicelinks</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#upgrade" data-toggle="refresh">Upgrade</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#machine" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Machine <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="machine">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/machine/" data-toggle="refresh">Machine</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/machine/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/machine/#delete" data-toggle="refresh">Delete</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#machineDriver" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">MachineDriver <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="machineDriver">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/machineDriver/" data-toggle="refresh">MachineDriver</a></li>
|
||||
|
||||
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/machineDriver/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/machineDriver/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/machineDriver/#reactivate" data-toggle="refresh">Reactivate</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#project" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Project <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="project">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/project/" data-toggle="refresh">Project</a></li>
|
||||
|
||||
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/project/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/project/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/project/#setmembers" data-toggle="refresh">Setmembers</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#projectMember" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">ProjectMember <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="projectMember">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/projectMember/" data-toggle="refresh">ProjectMember</a></li>
|
||||
|
||||
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/projectMember/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/projectMember/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#pullTask" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">PullTask <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="pullTask">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/pullTask/" data-toggle="refresh">PullTask</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/pullTask/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#registrationToken" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">RegistrationToken <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="registrationToken">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registrationToken/" data-toggle="refresh">RegistrationToken</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registrationToken/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#registry" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Registry <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="registry">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registry/" data-toggle="refresh">Registry</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registry/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registry/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registry/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registry/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registry/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#registryCredential" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">RegistryCredential <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="registryCredential">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registryCredential/" data-toggle="refresh">RegistryCredential</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registryCredential/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registryCredential/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registryCredential/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registryCredential/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registryCredential/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#service" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Service <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="service">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/" data-toggle="refresh">Service</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#addservicelink" data-toggle="refresh">Addservicelink</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#cancelrollback" data-toggle="refresh">Cancelrollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#cancelupgrade" data-toggle="refresh">Cancelupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#finishupgrade" data-toggle="refresh">Finishupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#removeservicelink" data-toggle="refresh">Removeservicelink</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#restart" data-toggle="refresh">Restart</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#rollback" data-toggle="refresh">Rollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#setservicelinks" data-toggle="refresh">Setservicelinks</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#serviceConsumeMap" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">ServiceConsumeMap <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="serviceConsumeMap">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/serviceConsumeMap/" data-toggle="refresh">ServiceConsumeMap</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#serviceExposeMap" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">ServiceExposeMap <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="serviceExposeMap">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/serviceExposeMap/" data-toggle="refresh">ServiceExposeMap</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#setting" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Setting <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="setting">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/setting/" data-toggle="refresh">Setting</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#subscribe" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Subscribe <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="subscribe">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/subscribe/" data-toggle="refresh">Subscribe</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/subscribe/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#volume" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Volume <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="volume">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/volume/" data-toggle="refresh">Volume</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/volume/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/volume/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/volume/#restorefrombackup" data-toggle="refresh">Restorefrombackup</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/volume/#reverttosnapshot" data-toggle="refresh">Reverttosnapshot</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/volume/#snapshot" data-toggle="refresh">Snapshot</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
</ul><!-- /.navbar-nav -->
|
||||
</div><!-- /.navbar-collapse -->
|
||||
|
||||
|
||||
</div> <!-- /.navbar-inverse -->
|
||||
</div> <!-- /.sidebar-nav -->
|
405
docs/_includes/rancher-api-sidebar.html
Normal file
@ -0,0 +1,405 @@
|
||||
<div class="sidebar-nav">
|
||||
|
||||
<div class="navbar navbar-inverse" role="navigation">
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
|
||||
<span class="sr-only">Toggle navigation</span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<a class="navbar-brand" href="http://rancher.com/"><img src="{{site.baseurl}}/img/rancher-logo-nopadding.svg"></a>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
|
||||
<div>
|
||||
<!--Start Google Search-->
|
||||
<script>
|
||||
(function() {
|
||||
var cx = '007896692384436596364:60akf3bfmxm';
|
||||
var gcse = document.createElement('script');
|
||||
gcse.type = 'text/javascript';
|
||||
gcse.async = true;
|
||||
gcse.src = (document.location.protocol == 'https:' ? 'https:' : 'http:') +
|
||||
'//cse.google.com/cse.js?cx=' + cx;
|
||||
var s = document.getElementsByTagName('script')[0];
|
||||
s.parentNode.insertBefore(gcse, s);
|
||||
})();
|
||||
</script>
|
||||
<gcse:search></gcse:search>
|
||||
<!--End Google Search-->
|
||||
</div>
|
||||
<!-- Collect the nav links, forms, and other content for toggling -->
|
||||
<div class="navbar-collapse collapse">
|
||||
<ul class="nav navbar-nav" id="mainmenu">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/">All Resources</a></li>
|
||||
<li class="panel">
|
||||
<a href="#account" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Account <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="account">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/account/">Account</a></li>
|
||||
|
||||
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/account/#activate">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/account/#deactivate">Deactivate</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#apiKey" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">ApiKey <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="apiKey">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/apiKey/">ApiKey</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/apiKey/#create">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/apiKey/#update">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/apiKey/#delete">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/apiKey/#activate">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/apiKey/#deactivate">Deactivate</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#auditLog" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">AuditLog <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="auditLog">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/auditLog/">AuditLog</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#certificate" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Certificate <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="certificate">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/certificate/">Certificate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/certificate/#create">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/certificate/#update">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/certificate/#delete">Delete</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#container" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Container <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="container">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/">Container</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#create">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#update">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#delete">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#console">Console</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#execute">Execute</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#logs">Logs</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#proxy">Proxy</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#restart">Restart</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#start">Start</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/container/#stop">Stop</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#dnsService" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">DnsService <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="dnsService">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/">DnsService</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/#create">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/#update">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/#delete">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/#activate">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/#deactivate">Deactivate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/#removeservicelink">Removeservicelink</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/#rollback">Rollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/#setservicelinks">Setservicelinks</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/dnsService/#upgrade">Upgrade</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#environment" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Environment <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="environment">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/">Environment</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#create">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#update">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#delete">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#activateservices">Activateservices</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#cancelrollback">Cancelrollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#cancelupgrade">Cancelupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#deactivateservices">Deactivateservices</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#exportconfig">Exportconfig</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#finishupgrade">Finishupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/environment/#rollback">Rollback</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#externalService" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">ExternalService <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="externalService">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/">ExternalService</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#create">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#update">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#delete">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#activate">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#cancelrollback">Cancelrollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#cancelupgrade">Cancelupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#deactivate">Deactivate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#finishupgrade">Finishupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#rollback">Rollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/externalService/#upgrade">Upgrade</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#healthcheckInstanceHostMap" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">HealthcheckInstanceHostMap <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="healthcheckInstanceHostMap">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/healthcheckInstanceHostMap/">HealthcheckInstanceHostMap</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#host" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Host <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="host">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/host/">Host</a></li>
|
||||
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/host/#update">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/host/#delete">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/host/#activate">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/host/#deactivate">Deactivate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/host/#dockersocket">Dockersocket</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#identity" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Identity <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="identity">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/identity/">Identity</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#kubernetesStackUpgrade" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">KubernetesStackUpgrade <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="kubernetesStackUpgrade">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/kubernetesStackUpgrade/">KubernetesStackUpgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/kubernetesStackUpgrade/#create">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#loadBalancerService" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">LoadBalancerService <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="loadBalancerService">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/">LoadBalancerService</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#create">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#update">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#delete">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#activate">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#addservicelink">Addservicelink</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#cancelrollback">Cancelrollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#cancelupgrade">Cancelupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#deactivate">Deactivate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#finishupgrade">Finishupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#removeservicelink">Removeservicelink</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#rollback">Rollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#setservicelinks">Setservicelinks</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/loadBalancerService/#upgrade">Upgrade</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#machine" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Machine <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="machine">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/machine/">Machine</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/machine/#create">Create</a></li>
|
||||
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/machine/#delete">Delete</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#machineDriver" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">MachineDriver <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="machineDriver">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/machineDriver/">MachineDriver</a></li>
|
||||
|
||||
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/machineDriver/#activate">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/machineDriver/#deactivate">Deactivate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/machineDriver/#reactivate">Reactivate</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#project" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Project <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="project">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/project/">Project</a></li>
|
||||
|
||||
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/project/#activate">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/project/#deactivate">Deactivate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/project/#setmembers">Setmembers</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#projectMember" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">ProjectMember <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="projectMember">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/projectMember/">ProjectMember</a></li>
|
||||
|
||||
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/projectMember/#activate">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/projectMember/#deactivate">Deactivate</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#pullTask" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">PullTask <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="pullTask">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/pullTask/">PullTask</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/pullTask/#create">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#registrationToken" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">RegistrationToken <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="registrationToken">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registrationToken/">RegistrationToken</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registrationToken/#create">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#registry" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Registry <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="registry">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registry/">Registry</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registry/#create">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registry/#update">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registry/#delete">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registry/#activate">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registry/#deactivate">Deactivate</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#registryCredential" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">RegistryCredential <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="registryCredential">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registryCredential/">RegistryCredential</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registryCredential/#create">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registryCredential/#update">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registryCredential/#delete">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registryCredential/#activate">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/registryCredential/#deactivate">Deactivate</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#service" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Service <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="service">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/">Service</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#create">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#update">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#delete">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#activate">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#addservicelink">Addservicelink</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#cancelrollback">Cancelrollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#cancelupgrade">Cancelupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#deactivate">Deactivate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#finishupgrade">Finishupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#removeservicelink">Removeservicelink</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#restart">Restart</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#rollback">Rollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/service/#setservicelinks">Setservicelinks</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#serviceConsumeMap" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">ServiceConsumeMap <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="serviceConsumeMap">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/serviceConsumeMap/">ServiceConsumeMap</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#serviceExposeMap" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">ServiceExposeMap <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="serviceExposeMap">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/serviceExposeMap/">ServiceExposeMap</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#setting" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Setting <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="setting">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/setting/">Setting</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#subscribe" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Subscribe <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="subscribe">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/subscribe/">Subscribe</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/subscribe/#create">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#volume" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Volume <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="volume">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/volume/">Volume</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/volume/#create">Create</a></li>
|
||||
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/volume/#delete">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/volume/#restorefrombackup">Restorefrombackup</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/volume/#reverttosnapshot">Reverttosnapshot</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/volume/#snapshot">Snapshot</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
</ul><!-- /.navbar-nav -->
|
||||
</div><!-- /.navbar-collapse -->
|
||||
|
||||
|
||||
</div> <!-- /.navbar-inverse -->
|
||||
</div> <!-- /.sidebar-nav -->
|
435
docs/_includes/rancher-api-v2-beta-sidebar-v1.2.html
Normal file
@ -0,0 +1,435 @@
|
||||
<div class="sidebar-nav">
|
||||
|
||||
<div class="navbar navbar-inverse" role="navigation">
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
|
||||
<span class="sr-only">Toggle navigation</span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<a class="navbar-brand" href="http://rancher.com/"><img src="{{site.baseurl}}/img/rancher-logo-nopadding.svg"></a>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
|
||||
<div>
|
||||
<!--Start Google Search-->
|
||||
<script>
|
||||
(function() {
|
||||
var cx = '007896692384436596364:60akf3bfmxm';
|
||||
var gcse = document.createElement('script');
|
||||
gcse.type = 'text/javascript';
|
||||
gcse.async = true;
|
||||
gcse.src = (document.location.protocol == 'https:' ? 'https:' : 'http:') +
|
||||
'//cse.google.com/cse.js?cx=' + cx;
|
||||
var s = document.getElementsByTagName('script')[0];
|
||||
s.parentNode.insertBefore(gcse, s);
|
||||
})();
|
||||
</script>
|
||||
<gcse:search></gcse:search>
|
||||
<!--End Google Search-->
|
||||
</div>
|
||||
<!-- Collect the nav links, forms, and other content for toggling -->
|
||||
<div class="navbar-collapse collapse">
|
||||
<ul class="nav navbar-nav" id="mainmenu">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/" data-toggle="refresh">Rancher Documentation</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/">How to use the API v2-beta</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/access-control/">Setting up Access Control using the API</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-keys/">What are API keys</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/">API Resources</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/common/">Common Resource Fields</a></li>
|
||||
<li class="panel">
|
||||
<a href="#account" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Account <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="account">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/account/" data-toggle="refresh">Account</a></li>
|
||||
|
||||
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/account/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/account/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#apiKey" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">ApiKey <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="apiKey">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/apiKey/" data-toggle="refresh">ApiKey</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/apiKey/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/apiKey/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/apiKey/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/apiKey/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/apiKey/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#auditLog" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">AuditLog <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="auditLog">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/auditLog/" data-toggle="refresh">AuditLog</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#binding" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Binding <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="binding">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/binding/" data-toggle="refresh">Binding</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/binding/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/binding/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#certificate" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Certificate <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="certificate">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/certificate/" data-toggle="refresh">Certificate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/certificate/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/certificate/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/certificate/#delete" data-toggle="refresh">Delete</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#container" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Container <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="container">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/container/" data-toggle="refresh">Container</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/container/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/container/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/container/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/container/#console" data-toggle="refresh">Console</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/container/#execute" data-toggle="refresh">Execute</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/container/#logs" data-toggle="refresh">Logs</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/container/#proxy" data-toggle="refresh">Proxy</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/container/#restart" data-toggle="refresh">Restart</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/container/#start" data-toggle="refresh">Start</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/container/#stop" data-toggle="refresh">Stop</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#dnsService" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">DnsService <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="dnsService">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/dnsService/" data-toggle="refresh">DnsService</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/dnsService/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/dnsService/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/dnsService/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/dnsService/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/dnsService/#continueupgrade" data-toggle="refresh">Continueupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/dnsService/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/dnsService/#removeservicelink" data-toggle="refresh">Removeservicelink</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/dnsService/#rollback" data-toggle="refresh">Rollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/dnsService/#setservicelinks" data-toggle="refresh">Setservicelinks</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/dnsService/#upgrade" data-toggle="refresh">Upgrade</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#externalService" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">ExternalService <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="externalService">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/externalService/" data-toggle="refresh">ExternalService</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/externalService/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/externalService/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/externalService/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/externalService/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/externalService/#cancelupgrade" data-toggle="refresh">Cancelupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/externalService/#continueupgrade" data-toggle="refresh">Continueupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/externalService/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/externalService/#finishupgrade" data-toggle="refresh">Finishupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/externalService/#rollback" data-toggle="refresh">Rollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/externalService/#upgrade" data-toggle="refresh">Upgrade</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#healthcheckInstanceHostMap" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">HealthcheckInstanceHostMap <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="healthcheckInstanceHostMap">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/healthcheckInstanceHostMap/" data-toggle="refresh">HealthcheckInstanceHostMap</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#host" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Host <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="host">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/host/" data-toggle="refresh">Host</a></li>
|
||||
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/host/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/host/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/host/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/host/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/host/#dockersocket" data-toggle="refresh">Dockersocket</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#identity" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Identity <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="identity">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/identity/" data-toggle="refresh">Identity</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#loadBalancerService" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">LoadBalancerService <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="loadBalancerService">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/loadBalancerService/" data-toggle="refresh">LoadBalancerService</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/loadBalancerService/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/loadBalancerService/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/loadBalancerService/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/loadBalancerService/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/loadBalancerService/#addservicelink" data-toggle="refresh">Addservicelink</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/loadBalancerService/#cancelupgrade" data-toggle="refresh">Cancelupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/loadBalancerService/#continueupgrade" data-toggle="refresh">Continueupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/loadBalancerService/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/loadBalancerService/#finishupgrade" data-toggle="refresh">Finishupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/loadBalancerService/#removeservicelink" data-toggle="refresh">Removeservicelink</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/loadBalancerService/#rollback" data-toggle="refresh">Rollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/loadBalancerService/#setservicelinks" data-toggle="refresh">Setservicelinks</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/loadBalancerService/#upgrade" data-toggle="refresh">Upgrade</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#machine" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Machine <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="machine">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/machine/" data-toggle="refresh">Machine</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/machine/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/machine/#delete" data-toggle="refresh">Delete</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#machineDriver" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">MachineDriver <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="machineDriver">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/machineDriver/" data-toggle="refresh">MachineDriver</a></li>
|
||||
|
||||
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/machineDriver/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/machineDriver/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/machineDriver/#reactivate" data-toggle="refresh">Reactivate</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#project" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Project <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="project">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/project/" data-toggle="refresh">Project</a></li>
|
||||
|
||||
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/project/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/project/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/project/#setmembers" data-toggle="refresh">Setmembers</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#projectMember" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">ProjectMember <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="projectMember">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/projectMember/" data-toggle="refresh">ProjectMember</a></li>
|
||||
|
||||
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/projectMember/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/projectMember/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#pullTask" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">PullTask <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="pullTask">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/pullTask/" data-toggle="refresh">PullTask</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/pullTask/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#registrationToken" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">RegistrationToken <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="registrationToken">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/registrationToken/" data-toggle="refresh">RegistrationToken</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/registrationToken/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#registry" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Registry <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="registry">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/registry/" data-toggle="refresh">Registry</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/registry/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/registry/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/registry/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/registry/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/registry/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#registryCredential" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">RegistryCredential <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="registryCredential">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/registryCredential/" data-toggle="refresh">RegistryCredential</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/registryCredential/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/registryCredential/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/registryCredential/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/registryCredential/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/registryCredential/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#service" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Service <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="service">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/service/" data-toggle="refresh">Service</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/service/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/service/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/service/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/service/#activate" data-toggle="refresh">Activate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/service/#addservicelink" data-toggle="refresh">Addservicelink</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/service/#cancelupgrade" data-toggle="refresh">Cancelupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/service/#continueupgrade" data-toggle="refresh">Continueupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/service/#deactivate" data-toggle="refresh">Deactivate</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/service/#finishupgrade" data-toggle="refresh">Finishupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/service/#removeservicelink" data-toggle="refresh">Removeservicelink</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/service/#restart" data-toggle="refresh">Restart</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/service/#rollback" data-toggle="refresh">Rollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/service/#setservicelinks" data-toggle="refresh">Setservicelinks</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#serviceBinding" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">ServiceBinding <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="serviceBinding">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/serviceBinding/" data-toggle="refresh">ServiceBinding</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/serviceBinding/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/serviceBinding/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#serviceConsumeMap" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">ServiceConsumeMap <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="serviceConsumeMap">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/serviceConsumeMap/" data-toggle="refresh">ServiceConsumeMap</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#serviceExposeMap" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">ServiceExposeMap <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="serviceExposeMap">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/serviceExposeMap/" data-toggle="refresh">ServiceExposeMap</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#serviceLog" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">ServiceLog <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="serviceLog">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/serviceLog/" data-toggle="refresh">ServiceLog</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#setting" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Setting <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="setting">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/setting/" data-toggle="refresh">Setting</a></li>
|
||||
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#stack" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Stack <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="stack">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/stack/" data-toggle="refresh">Stack</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/stack/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/stack/#update" data-toggle="refresh">Update</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/stack/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/stack/#activateservices" data-toggle="refresh">Activateservices</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/stack/#addoutputs" data-toggle="refresh">Addoutputs</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/stack/#cancelupgrade" data-toggle="refresh">Cancelupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/stack/#deactivateservices" data-toggle="refresh">Deactivateservices</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/stack/#error" data-toggle="refresh">Error</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/stack/#exportconfig" data-toggle="refresh">Exportconfig</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/stack/#finishupgrade" data-toggle="refresh">Finishupgrade</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/stack/#rollback" data-toggle="refresh">Rollback</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/stack/#upgrade" data-toggle="refresh">Upgrade</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#subscribe" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Subscribe <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="subscribe">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/subscribe/" data-toggle="refresh">Subscribe</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/subscribe/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#volume" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Volume <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="volume">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/volume/" data-toggle="refresh">Volume</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/volume/#create" data-toggle="refresh">Create</a></li>
|
||||
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/volume/#delete" data-toggle="refresh">Delete</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/volume/#restorefrombackup" data-toggle="refresh">Restorefrombackup</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/volume/#reverttosnapshot" data-toggle="refresh">Reverttosnapshot</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/{{page.apiVersion}}/api-resources/volume/#snapshot" data-toggle="refresh">Snapshot</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
</ul><!-- /.navbar-nav -->
|
||||
</div><!-- /.navbar-collapse -->
|
||||
|
||||
|
||||
</div> <!-- /.navbar-inverse -->
|
||||
</div> <!-- /.sidebar-nav -->
|
207
docs/_includes/rancher-sidebar-old.html
Normal file
@ -0,0 +1,207 @@
|
||||
<div class="sidebar-nav">
|
||||
<div class="navbar navbar-inverse" role="navigation">
|
||||
|
||||
<!-- Brand and Toggle get grouped for better mobile display -->
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
|
||||
<span class="sr-only">Toggle navigation</span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<a class="navbar-brand" href="http://rancher.com/"><img src="{{site.baseurl}}/img/rancher-logo-nopadding.png"></a>
|
||||
</div>
|
||||
|
||||
<div class="clearfix"></div>
|
||||
|
||||
<div>
|
||||
<!--Start Google Search-->
|
||||
<script>
|
||||
(function() {
|
||||
var cx = '007896692384436596364:60akf3bfmxm';
|
||||
var gcse = document.createElement('script');
|
||||
gcse.type = 'text/javascript';
|
||||
gcse.async = true;
|
||||
gcse.src = (document.location.protocol == 'https:' ? 'https:' : 'http:') +
|
||||
'//cse.google.com/cse.js?cx=' + cx;
|
||||
var s = document.getElementsByTagName('script')[0];
|
||||
s.parentNode.insertBefore(gcse, s);
|
||||
})();
|
||||
</script>
|
||||
<gcse:search></gcse:search>
|
||||
<!--End Google Search-->
|
||||
</div>
|
||||
|
||||
<!-- Collect the nav links, forms, and other content for toggling -->
|
||||
<div class="navbar-collapse collapse">
|
||||
<ul class="nav navbar-nav" id="mainmenu">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/">Overview</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/quick-start-guide/">Quick Start Guide</a></li>
|
||||
<li class="panel">
|
||||
<a href="#installing-rancher" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Installing Rancher<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="installing-rancher">
|
||||
<li>
|
||||
<a href="#installing-server" data-toggle="collapse" class="collapsed" data-parent="#installing-server">Installing Rancher server<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse" id="installing-server">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/installing-rancher/installing-server/"><i class="fa fa-angle-double-right"></i>Single Node</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/installing-rancher/installing-server/multi-nodes/"><i class="fa fa-angle-double-right"></i>Multi Nodes</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/installing-rancher/installing-server/basic-ssl-config/"><i class="fa fa-angle-double-right"></i>Basic SSL Configuration</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/installing-rancher/installing-server/no-internet-access/"><i class="fa fa-angle-double-right"></i>No Internet Access</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-ui/infrastructure/hosts/">Adding Hosts</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#concepts" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Concepts<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="concepts">
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/concepts/#users">Users</a></li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/concepts/#environments">Environments</a></li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/concepts/#host">Hosts</a></li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/concepts/#networking">Networking</a></li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/concepts/#service-discovery">Service Discovery</a></li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/concepts/#load-balancer">Load Balancer</a></li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/concepts/#distributed-dns-service">Distributed DNS Service</a></li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/concepts/#health-checks">Health Checks</a></li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/concepts/#service-ha">Service HA</a></li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/concepts/#service-upgrade">Service Upgrade</a></li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/concepts/#rancher-compose">Rancher Compose</a></li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/concepts/#stacks">Stacks</a></li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/concepts/#container-scheduling">Scheduling</a></li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/concepts/#sidekicks">Sidekicks</a></li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/concepts/#metadata-services">Metadata Services</a></li>
|
||||
</ul>
|
||||
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#rancherservice" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Rancher Services<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="rancherservice">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-services/health-checks/">Health Checks</a></li>
|
||||
<li>
|
||||
<a href="#dnsservice" data-toggle="collapse" class="collapsed" data-parent="#dnsservice">DNS Service<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse" id="dnsservice">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-services/internal-dns-service/"><i class="fa fa-angle-double-right"></i>Internal DNS Service</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-services/dns-service/"><i class="fa fa-angle-double-right"></i>External DNS Service using Route 53</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-services/metadata-service/">Metadata Service</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-services/storage-service/">Storage Service</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-services/audit-log/">Audit Logging</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-services/service-accounts/">Service Accounts</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#configuration" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Configuration<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<!--OLD href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/configuration/"-->
|
||||
<ul class="collapse list-group-submenu" id="configuration">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/configuration/access-control/">Access Control</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/configuration/accounts/">Accounts</a></li>
|
||||
<li>
|
||||
<a href="#settings" data-toggle="collapse" class="collapsed" data-parent="#settings">Settings <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="settings">
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/configuration/settings/#host-registration"><i class="fa fa-angle-double-right"></i>Host-Registration</a></li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/configuration/settings/#catalog"><i class="fa fa-angle-double-right"></i>Catalog</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/configuration/machine-drivers/">Machine Drivers</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/configuration/environments/">Environments</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/configuration/registries/">Registries</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/native-docker/">Using Native Docker CLI with Rancher</a></li>
|
||||
|
||||
<li class="panel">
|
||||
<a href="#rancher-compose" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Using Rancher through Rancher-Compose<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="rancher-compose">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-compose/">Using Rancher Compose</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-compose/commands/">Commands and Options</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-compose/upgrading/">Upgrading Services</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-compose/environment-interpolation/">Environment Interpolation</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-compose/rancher-services/">Rancher Services</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-compose/scheduling/">Scheduling</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-compose/build/">Building with S3</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#rancherui" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Rancher UI<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="rancherui">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-ui/scheduling/">Scheduling Services</a></li>
|
||||
<li>
|
||||
<a href="#stacks" data-toggle="collapse" class="collapsed" data-parent="#stacks">Stacks<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse" id="stacks">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-ui/applications/stacks/adding-services/">Adding Services</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-ui/applications/stacks/adding-service-alias/"></i>Adding Service Alias</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-ui/applications/stacks/adding-balancers/">Adding Load Balancers</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-ui/applications/stacks/adding-external-services/">Adding External Services</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-ui/applications/stacks/">Stack Options</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#hosts" data-toggle="collapse" class="collapsed" data-parent="#hosts">Infrastructure/Hosts <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="hosts">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-ui/infrastructure/hosts/"><i class="fa fa-angle-double-right"></i>Getting Started with Hosts</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-ui/infrastructure/hosts/custom/"><i class="fa fa-angle-double-right"></i>Adding Custom Hosts</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-ui/infrastructure/hosts/amazon/"><i class="fa fa-angle-double-right"></i>Amazon EC2</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-ui/infrastructure/hosts/azure/"><i class="fa fa-angle-double-right"></i>Azure</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-ui/infrastructure/hosts/digitalocean/"><i class="fa fa-angle-double-right"></i>DigitalOcean</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-ui/infrastructure/hosts/exoscale/"><i class="fa fa-angle-double-right"></i>Exoscale</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-ui/infrastructure/hosts/packet/"><i class="fa fa-angle-double-right"></i>Packet</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-ui/infrastructure/hosts/rackspace/"><i class="fa fa-angle-double-right"></i>Rackspace</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-ui/infrastructure/hosts/other/"><i class="fa fa-angle-double-right"></i>Other Drivers</a></li>
|
||||
</ul>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-ui/infrastructure/containers/">Infrastructure/Containers</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-ui/infrastructure/certificates/">Infrastructure/Certificates</a></li>
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/catalog/">Rancher Catalog</a></li>
|
||||
<li class="panel">
|
||||
<a href="#kubernetes" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Kubernetes<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="kubernetes">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/kubernetes/">How to work with Kubernetes</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/kubernetes/ingress/">Ingress Support</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/kubernetes/k8s-internal-dns-service/">K8s Internal DNS Service</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/swarm/">Swarm</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/mesos/">Mesos</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/labels/">Labels in Rancher</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/upgrading/">Upgrading Rancher</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/contributing/">Contributing to Rancher</a></li>
|
||||
<li class="panel">
|
||||
<a href="#api" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">API<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="api">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/configuration/api-keys/">API Keys</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/">How to use the API</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/access-control/">Access Control using the API</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/common/">Common Resource Fields</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/">API Resources</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#faqs" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">FAQs<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="faqs">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/faqs/server/">Rancher Server</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/faqs/agents/">Rancher Agents/Hosts</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/faqs/troubleshooting/">Troubleshooting</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#docsarchive1" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Docs Archive<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="docsarchive1">
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/" data-toggle="refresh">Rancher v1.0</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul><!-- /.navbar-nav -->
|
||||
</div><!-- /.navbar-collapse -->
|
||||
|
||||
<!--language select
|
||||
<div class="btn-group" role="group" aria-label="...">
|
||||
<a class="btn btn-default btn-xs" href="{{site.baseurl}}/rancher/{{page.version}}/en/">English</a>
|
||||
<a class="btn btn-default btn-xs" href="{{site.baseurl}}/rancher/{{page.version}}/zh/">Chinese</a>
|
||||
</div>
|
||||
-->
|
||||
</div> <!-- /.navbar-inverse -->
|
||||
</div> <!-- /.sidebar-nav -->
|
187
docs/_includes/rancher-sidebar-v1.0.html
Normal file
@ -0,0 +1,187 @@
|
||||
<div class="sidebar-nav">
|
||||
<div class="navbar navbar-inverse" role="navigation">
|
||||
|
||||
<!-- Brand and Toggle get grouped for better mobile display -->
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
|
||||
<span class="sr-only">Toggle navigation</span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<a class="navbar-brand" href="http://rancher.com/"><img src="{{site.baseurl}}/img/rancher-logo-nopadding.svg"></a>
|
||||
</div>
|
||||
|
||||
<div class="clearfix"></div>
|
||||
|
||||
<div>
|
||||
<!--Start Google Search-->
|
||||
<script>
|
||||
(function() {
|
||||
var cx = '007896692384436596364:60akf3bfmxm';
|
||||
var gcse = document.createElement('script');
|
||||
gcse.type = 'text/javascript';
|
||||
gcse.async = true;
|
||||
gcse.src = (document.location.protocol == 'https:' ? 'https:' : 'http:') +
|
||||
'//cse.google.com/cse.js?cx=' + cx;
|
||||
var s = document.getElementsByTagName('script')[0];
|
||||
s.parentNode.insertBefore(gcse, s);
|
||||
})();
|
||||
</script>
|
||||
<gcse:search></gcse:search>
|
||||
<!--End Google Search-->
|
||||
</div>
|
||||
|
||||
<!-- Collect the nav links, forms, and other content for toggling -->
|
||||
<div class="navbar-collapse collapse">
|
||||
<ul class="nav navbar-nav" id="mainmenu">
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/">Overview</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/quick-start-guide/">Quick Start Guide</a></li>
|
||||
<li class="panel">
|
||||
<a href="#installing-rancher" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Installing Rancher<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="installing-rancher">
|
||||
<li>
|
||||
<a href="#installing-server" data-toggle="collapse" class="collapsed" data-parent="#installing-server">Installing Rancher server<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse" id="installing-server">
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/installing-rancher/installing-server/"><i class="fa fa-angle-double-right"></i>Single Node</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/installing-rancher/installing-server/multi-nodes/"><i class="fa fa-angle-double-right"></i>Multi Nodes</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/installing-rancher/installing-server/basic-ssl-config/"><i class="fa fa-angle-double-right"></i>Basic SSL Configuration</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/installing-rancher/installing-server/no-internet-access/"><i class="fa fa-angle-double-right"></i>No Internet Access</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/rancher-ui/infrastructure/hosts/">Adding Hosts</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#concepts" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Concepts<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="concepts">
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/concepts/#users">Users</a></li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/concepts/#environments">Environments</a></li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/concepts/#host">Hosts</a></li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/concepts/#networking">Networking</a></li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/concepts/#service-discovery">Service Discovery</a></li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/concepts/#load-balancer">Load Balancer</a></li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/concepts/#distributed-dns-service">Distributed DNS Service</a></li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/concepts/#health-checks">Health Checks</a></li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/concepts/#service-ha">Service HA</a></li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/concepts/#service-upgrade">Service Upgrade</a></li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/concepts/#rancher-compose">Rancher Compose</a></li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/concepts/#stacks">Stacks</a></li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/concepts/#container-scheduling">Scheduling</a></li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/concepts/#sidekicks">Sidekicks</a></li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/concepts/#metadata-services">Metadata Services</a></li>
|
||||
</ul>
|
||||
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#rancherservice" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Rancher Services<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="rancherservice">
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/rancher-services/health-checks/">Health Checks</a></li>
|
||||
<li>
|
||||
<a href="#dnsservice" data-toggle="collapse" class="collapsed" data-parent="#dnsservice">DNS Service<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse" id="dnsservice">
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/rancher-services/internal-dns-service/"><i class="fa fa-angle-double-right"></i>Internal DNS Service</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/rancher-services/dns-service/"><i class="fa fa-angle-double-right"></i>External DNS Service using Route 53</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/rancher-services/metadata-service/">Metadata Service</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/rancher-services/storage-service/">Storage Service</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/rancher-services/audit-log/">Audit Logging</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-services/service-accounts/">Service Accounts</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#configuration" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Configuration<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<!--OLD href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/configuration/"-->
|
||||
<ul class="collapse list-group-submenu" id="configuration">
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/configuration/access-control/">Access Control</a></li>
|
||||
<li>
|
||||
<a href="#settings" data-toggle="collapse" class="collapsed" data-parent="#settings">Settings <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="settings">
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/configuration/settings/#host-registration"><i class="fa fa-angle-double-right"></i>Host-Registration</a></li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/configuration/settings/#catalog"><i class="fa fa-angle-double-right"></i>Catalog</a></li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/configuration/settings/#machine-drivers"><i class="fa fa-angle-double-right"></i>Machine Drivers</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/configuration/accounts/">Accounts</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/configuration/environments/">Environments</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/configuration/api-keys/">API Keys</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/configuration/registries/">Registries</a></li>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/native-docker/">Using Native Docker CLI with Rancher</a></li>
|
||||
|
||||
<li class="panel">
|
||||
<a href="#rancher-compose" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Using Rancher through Rancher-Compose<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="rancher-compose">
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/rancher-compose/">Using Rancher Compose</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/rancher-compose/commands/">Commands and Options</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/rancher-compose/upgrading/">Upgrading Services</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/rancher-compose/environment-interpolation/">Environment Interpolation</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/rancher-compose/rancher-services/">Rancher Services</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/rancher-compose/scheduling/">Scheduling</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/rancher-compose/build/">Building with S3</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#rancherui" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Rancher UI<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="rancherui">
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/rancher-ui/scheduling/">Scheduling Services</a></li>
|
||||
<li>
|
||||
<a href="#stacks" data-toggle="collapse" class="collapsed" data-parent="#stacks">Application/Stacks<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse" id="stacks">
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/rancher-ui/applications/stacks/adding-services/">Adding Services</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/rancher-ui/applications/stacks/adding-service-alias/"></i>Adding Service Alias</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/rancher-ui/applications/stacks/adding-balancers/">Adding Load Balancers</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/rancher-ui/applications/stacks/adding-external-services/">Adding External Services</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/rancher-ui/applications/stacks/">Stack Options</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#hosts" data-toggle="collapse" class="collapsed" data-parent="#hosts">Infrastructure/Hosts <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="hosts">
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/rancher-ui/infrastructure/hosts/"><i class="fa fa-angle-double-right"></i>Getting Started with Hosts</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/rancher-ui/infrastructure/hosts/custom/"><i class="fa fa-angle-double-right"></i>Adding Custom Hosts</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/rancher-ui/infrastructure/hosts/amazon/"><i class="fa fa-angle-double-right"></i>Amazon EC2</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/rancher-ui/infrastructure/hosts/azure/"><i class="fa fa-angle-double-right"></i>Azure</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/rancher-ui/infrastructure/hosts/digitalocean/"><i class="fa fa-angle-double-right"></i>DigitalOcean</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/rancher-ui/infrastructure/hosts/exoscale/"><i class="fa fa-angle-double-right"></i>Exoscale</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/rancher-ui/infrastructure/hosts/packet/"><i class="fa fa-angle-double-right"></i>Packet</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/rancher-ui/infrastructure/hosts/rackspace/"><i class="fa fa-angle-double-right"></i>Rackspace</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/rancher-ui/infrastructure/hosts/other/"><i class="fa fa-angle-double-right"></i>Other Drivers</a></li>
|
||||
</ul>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/rancher-ui/infrastructure/containers/">Infrastructure/Containers</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/rancher-ui/infrastructure/certificates/">Infrastructure/Certificates</a></li>
|
||||
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/catalog/">Rancher Catalog</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/kubernetes/">Kubernetes</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/swarm/">Swarm</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/labels/">Labels in Rancher</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/upgrading/">Upgrading Rancher</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/contributing/">Contributing to Rancher</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/api/" data-toggle="refresh">API Documentation</a></li>
|
||||
<li class="panel">
|
||||
<a href="#faqs" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">FAQs<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="faqs">
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/faqs/server/">Rancher Server</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/faqs/agents/">Rancher Agents/Hosts</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/faqs/troubleshooting">Troubleshooting</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
</ul><!-- /.navbar-nav -->
|
||||
</div><!-- /.navbar-collapse -->
|
||||
|
||||
<!--language select
|
||||
<div class="btn-group" role="group" aria-label="...">
|
||||
<a class="btn btn-default btn-xs" href="{{site.baseurl}}/rancher/v1.0/en/">English</a>
|
||||
<a class="btn btn-default btn-xs" href="{{site.baseurl}}/rancher/v1.0/zh/">Chinese</a>
|
||||
</div>
|
||||
-->
|
||||
</div> <!-- /.navbar-inverse -->
|
||||
</div> <!-- /.sidebar-nav -->
|
182
docs/_includes/rancher-sidebar-v1.1.html
Normal file
@ -0,0 +1,182 @@
|
||||
<div class="sidebar-nav">
|
||||
<div class="navbar navbar-inverse" role="navigation">
|
||||
|
||||
<!-- Brand and Toggle get grouped for better mobile display -->
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
|
||||
<span class="sr-only">Toggle navigation</span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<a class="navbar-brand" href="http://rancher.com/"><img src="{{site.baseurl}}/img/rancher-logo-nopadding.svg"></a>
|
||||
</div>
|
||||
|
||||
<div class="clearfix"></div>
|
||||
|
||||
<div>
|
||||
<!--Start Google Search-->
|
||||
<script>
|
||||
(function() {
|
||||
var cx = '007896692384436596364:60akf3bfmxm';
|
||||
var gcse = document.createElement('script');
|
||||
gcse.type = 'text/javascript';
|
||||
gcse.async = true;
|
||||
gcse.src = (document.location.protocol == 'https:' ? 'https:' : 'http:') +
|
||||
'//cse.google.com/cse.js?cx=' + cx;
|
||||
var s = document.getElementsByTagName('script')[0];
|
||||
s.parentNode.insertBefore(gcse, s);
|
||||
})();
|
||||
</script>
|
||||
<gcse:search></gcse:search>
|
||||
<!--End Google Search-->
|
||||
</div>
|
||||
|
||||
<!-- Collect the nav links, forms, and other content for toggling -->
|
||||
<div class="navbar-collapse collapse">
|
||||
<ul class="nav navbar-nav" id="mainmenu">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/">Overview</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/quick-start-guide/">Quick Start Guide</a></li>
|
||||
<li class="panel">
|
||||
<a href="#installing-rancher" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Installing Rancher<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="installing-rancher">
|
||||
<li>
|
||||
<a href="#installing-server" data-toggle="collapse" class="collapsed" data-parent="#installing-server">Installing Rancher server<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse" id="installing-server">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/installing-rancher/installing-server/"><i class="fa fa-angle-double-right"></i>Single Node</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/installing-rancher/installing-server/multi-nodes/"><i class="fa fa-angle-double-right"></i>Multi Nodes</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/installing-rancher/installing-server/basic-ssl-config/"><i class="fa fa-angle-double-right"></i>Basic SSL Configuration</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/installing-rancher/installing-server/no-internet-access/"><i class="fa fa-angle-double-right"></i>No Internet Access</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/hosts/">Adding Hosts</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#upgrading" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Upgrading Rancher<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="upgrading">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/upgrading/">Single Node</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/upgrading/multi-nodes/">Multi Nodes</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#configuration" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Rancher Configuration<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="configuration">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/configuration/access-control/">Access Control</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/configuration/accounts/">Accounts</a></li>
|
||||
<li>
|
||||
<a href="#settings" data-toggle="collapse" class="collapsed" data-parent="#settings">Settings <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="settings">
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/configuration/settings/#host-registration"><i class="fa fa-angle-double-right"></i>Host-Registration</a></li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/configuration/settings/#catalog"><i class="fa fa-angle-double-right"></i>Catalog</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/configuration/machine-drivers/">Machine Drivers</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#environments" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Environments <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="environments">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/environments/">Environments</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/environments/registries/">Registries</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/environments/certificates/">Certificates</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#hosts" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Hosts <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="hosts">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/hosts/">Getting Started with Hosts</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/hosts/custom/">Adding Custom Hosts</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/hosts/amazon/">Adding Amazon EC2 Hosts</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/hosts/azure/">Adding Azure Hosts</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/hosts/digitalocean/">Adding DigitalOcean Hosts</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/hosts/exoscale/">Adding Exoscale Hosts</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/hosts/packet/">Adding Packet Hosts</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/hosts/rackspace/">Adding Rackspace Hosts</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/hosts/other/">Adding Hosts from Other Cloud Providers</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#rancherservice" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Rancher Infrastructure Services<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="rancherservice">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-services/networking">Networking</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-services/load-balancer">Load Balancer</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-services/dns-service/">DNS Service</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-services/metadata-service/">Metadata Service</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-services/storage-service/">Persistent Storage Service</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-services/audit-log/">Audit Logging</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-services/service-accounts/">Service Accounts</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#cattle" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Cattle<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="cattle">
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/stacks">Stacks</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/adding-services/">Adding Services</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/adding-load-balancers/">Adding Load Balancers</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/adding-external-services/">Adding External Services</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/adding-service-alias/">Adding Service Alias</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/health-checks/">Health Checks</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/scheduling/">Scheduling Services</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/internal-dns-service/">Internal DNS Service in Cattle Environments</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/external-dns-service/">External DNS Service using Route 53</a></li>
|
||||
<li class="panel">
|
||||
<a href="#rancher-compose" class="collapsed" data-toggle="collapse" data-parent="#cattle">Rancher-Compose<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="rancher-compose">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/rancher-compose/">Rancher Compose</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/rancher-compose/commands/">Commands and Options</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/rancher-compose/upgrading/">Upgrading Services</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/rancher-compose/environment-interpolation/">Environment Interpolation</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/rancher-compose/build/">Building with AWS S3</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/labels/"> Labels in Rancher</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#kubernetes" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Kubernetes<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="kubernetes">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/kubernetes/">Kubernetes</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/kubernetes/ingress/">Ingress Support</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/kubernetes/k8s-internal-dns-service/">Internal DNS Service in Kubernetes Environments</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/mesos/">Mesos</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/swarm/">Swarm</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/native-docker/">Using Native Docker CLI with Rancher</a></li>
|
||||
<li class="panel">
|
||||
<a href="#catalog" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Rancher Catalog<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="catalog">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/catalog/">Catalog</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/catalog/private-catalog/">Creating Private Catalogs</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/" data-toggle="refresh">API Documentation</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/contributing/">Contributing to Rancher</a></li>
|
||||
<li class="panel">
|
||||
<a href="#faqs" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">FAQs<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="faqs">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/faqs/server/">FAQs about Rancher Server</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/faqs/agents/">FAQs about Rancher Agents/Hosts</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/faqs/troubleshooting/">Troubleshooting FAQS</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#docsarchive1" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Docs Archive<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="docsarchive1">
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/" data-toggle="refresh">Rancher v1.0</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul><!-- /.navbar-nav -->
|
||||
</div><!-- /.navbar-collapse -->
|
||||
|
||||
<!--language select
|
||||
<div class="btn-group" role="group" aria-label="...">
|
||||
<a class="btn btn-default btn-xs" href="{{site.baseurl}}/rancher/{{page.version}}/en/">English</a>
|
||||
<a class="btn btn-default btn-xs" href="{{site.baseurl}}/rancher/{{page.version}}/zh/">Chinese</a>
|
||||
</div>
|
||||
-->
|
||||
</div> <!-- /.navbar-inverse -->
|
||||
</div> <!-- /.sidebar-nav -->
|
203
docs/_includes/rancher-sidebar-v1.2.html
Normal file
@ -0,0 +1,203 @@
|
||||
<div class="sidebar-nav">
|
||||
<div class="navbar navbar-inverse" role="navigation">
|
||||
|
||||
<!-- Brand and Toggle get grouped for better mobile display -->
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
|
||||
<span class="sr-only">Toggle navigation</span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<a class="navbar-brand" href="http://rancher.com/"><img src="{{site.baseurl}}/img/rancher-logo-nopadding.svg"></a>
|
||||
</div>
|
||||
|
||||
<div class="clearfix"></div>
|
||||
|
||||
<div>
|
||||
<!--Start Google Search-->
|
||||
<script>
|
||||
(function() {
|
||||
var cx = '007896692384436596364:60akf3bfmxm';
|
||||
var gcse = document.createElement('script');
|
||||
gcse.type = 'text/javascript';
|
||||
gcse.async = true;
|
||||
gcse.src = (document.location.protocol == 'https:' ? 'https:' : 'http:') +
|
||||
'//cse.google.com/cse.js?cx=' + cx;
|
||||
var s = document.getElementsByTagName('script')[0];
|
||||
s.parentNode.insertBefore(gcse, s);
|
||||
})();
|
||||
</script>
|
||||
<gcse:search></gcse:search>
|
||||
<!--End Google Search-->
|
||||
</div>
|
||||
|
||||
<!-- Collect the nav links, forms, and other content for toggling -->
|
||||
<div class="navbar-collapse collapse">
|
||||
<ul class="nav navbar-nav" id="mainmenu">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/">Overview</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/quick-start-guide/">Quick Start Guide</a></li>
|
||||
<li class="panel">
|
||||
<a href="#installing-rancher" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Installing Rancher<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="installing-rancher">
|
||||
<li>
|
||||
<a href="#installing-server" data-toggle="collapse" class="collapsed" data-parent="#installing-server">Installing Rancher server<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse" id="installing-server">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/installing-rancher/installing-server/"><i class="fa fa-angle-double-right"></i>Single Node</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/installing-rancher/installing-server/multi-nodes/"><i class="fa fa-angle-double-right"></i>Multi Nodes</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/installing-rancher/installing-server/basic-ssl-config/"><i class="fa fa-angle-double-right"></i>Basic SSL Configuration</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/installing-rancher/installing-server/no-internet-access/"><i class="fa fa-angle-double-right"></i>No Internet Access</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/hosts/">Adding Hosts</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#upgrading" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Upgrading Rancher<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="upgrading">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/upgrading/">Single Node</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/upgrading/multi-nodes/">Multi Nodes</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#configuration" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Rancher Configuration<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="configuration">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/configuration/access-control/">Access Control</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/configuration/accounts/">Accounts</a></li>
|
||||
<li>
|
||||
<a href="#settings" data-toggle="collapse" class="collapsed" data-parent="#settings">Settings <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="settings">
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/configuration/settings/#host-registration"><i class="fa fa-angle-double-right"></i>Host-Registration</a></li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/configuration/settings/#catalog"><i class="fa fa-angle-double-right"></i>Catalog</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/configuration/machine-drivers/">Machine Drivers</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#environments" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Environments <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="environments">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/environments/">Environments</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/environments/registries/">Registries</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/environments/certificates/">Certificates</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#hosts" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Hosts <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="hosts">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/hosts/">Getting Started with Hosts</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/hosts/custom/">Adding Custom Hosts</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/hosts/amazon/">Adding Amazon EC2 Hosts</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/hosts/azure/">Adding Azure Hosts</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/hosts/digitalocean/">Adding DigitalOcean Hosts</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/hosts/exoscale/">Adding Exoscale Hosts</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/hosts/packet/">Adding Packet Hosts</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/hosts/rackspace/">Adding Rackspace Hosts</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/hosts/other/">Adding Hosts from Other Cloud Providers</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#rancherservice" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Rancher Infrastructure Services<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="rancherservice">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-services/networking">Networking</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-services/load-balancer">Load Balancer</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-services/dns-service/">DNS Service</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-services/metadata-service/">Metadata Service</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-services/storage-service/">Persistent Storage Service</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-services/audit-log/">Audit Logging</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-services/service-accounts/">Service Accounts</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#cattle" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Cattle<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="cattle">
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/stacks">Stacks</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/adding-services/">Services</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/adding-load-balancers/">Load Balancers</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/adding-external-services/">External Services</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/adding-service-alias/">Service Alias</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/health-checks/">Health Checks</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/scheduling/">Scheduling Services</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/upgrading/">Upgrading Services</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/internal-dns-service/">Internal DNS Service in Cattle Environments</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/external-dns-service/">External DNS Service</a></li>
|
||||
<li class="panel">
|
||||
<a href="#rancher-compose" class="collapsed" data-toggle="collapse" data-parent="#cattle">Rancher-Compose<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="rancher-compose">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/rancher-compose/">Rancher Compose</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/rancher-compose/commands/">Commands and Options</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/rancher-compose/environment-interpolation/">Environment Interpolation</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/rancher-compose/build/">Building with AWS S3</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/labels/"> Labels in Cattle</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#kubernetes" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Kubernetes<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="kubernetes">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/kubernetes/">Kubernetes</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/kubernetes/ingress/">Ingress Support</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/kubernetes/k8s-internal-dns-service/">Internal DNS Service in Kubernetes Environments</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/mesos/">Mesos</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/swarm/">Swarm</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/native-docker/">Using Native Docker CLI with Rancher</a></li>
|
||||
<li class="panel">
|
||||
<a href="#catalog" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Rancher Catalog<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="catalog">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/catalog/">Catalog</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/catalog/private-catalog/">Creating Private Catalogs</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#cli" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Rancher CLI<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="cli">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cli/">Rancher CLI</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cli/commands/">Commands and Options</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cli/environment-interpolation/">Environment Interpolation</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<!--<li class="panel">
|
||||
<a href="#api" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">API<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="api">
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/">How to use the API</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/access-control/">Setting up Access Control using the API</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-keys/">What are API Keys</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/common/">Common Resource Fields</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/">API Resources</a></li>
|
||||
</ul>
|
||||
</li>-->
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/" data-toggle="refresh">API Documentation</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/contributing/">Contributing to Rancher</a></li>
|
||||
<li class="panel">
|
||||
<a href="#faqs" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">FAQs<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="faqs">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/faqs/server/">FAQs about Rancher Server</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/faqs/agents/">FAQs about Rancher Agents/Hosts</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/faqs/troubleshooting/">Troubleshooting FAQS</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#docsarchive1" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Docs Archive<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="docsarchive1">
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.1/{{page.lang}}/" data-toggle="refresh">Rancher v1.1</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/" data-toggle="refresh">Rancher v1.0</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul><!-- /.navbar-nav -->
|
||||
</div><!-- /.navbar-collapse -->
|
||||
|
||||
<!--language select
|
||||
<div class="btn-group" role="group" aria-label="...">
|
||||
<a class="btn btn-default btn-xs" href="{{site.baseurl}}/rancher/{{page.version}}/en/">English</a>
|
||||
<a class="btn btn-default btn-xs" href="{{site.baseurl}}/rancher/{{page.version}}/zh/">Chinese</a>
|
||||
</div>
|
||||
-->
|
||||
</div> <!-- /.navbar-inverse -->
|
||||
</div> <!-- /.sidebar-nav -->
|
203
docs/_includes/rancher-sidebar.html
Normal file
@ -0,0 +1,203 @@
|
||||
<div class="sidebar-nav">
|
||||
<div class="navbar navbar-inverse" role="navigation">
|
||||
|
||||
<!-- Brand and Toggle get grouped for better mobile display -->
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
|
||||
<span class="sr-only">Toggle navigation</span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<a class="navbar-brand" href="http://rancher.com/"><img src="{{site.baseurl}}/img/rancher-logo-nopadding.svg"></a>
|
||||
</div>
|
||||
|
||||
<div class="clearfix"></div>
|
||||
|
||||
<div>
|
||||
<!--Start Google Search-->
|
||||
<script>
|
||||
(function() {
|
||||
var cx = '007896692384436596364:60akf3bfmxm';
|
||||
var gcse = document.createElement('script');
|
||||
gcse.type = 'text/javascript';
|
||||
gcse.async = true;
|
||||
gcse.src = (document.location.protocol == 'https:' ? 'https:' : 'http:') +
|
||||
'//cse.google.com/cse.js?cx=' + cx;
|
||||
var s = document.getElementsByTagName('script')[0];
|
||||
s.parentNode.insertBefore(gcse, s);
|
||||
})();
|
||||
</script>
|
||||
<gcse:search></gcse:search>
|
||||
<!--End Google Search-->
|
||||
</div>
|
||||
|
||||
<!-- Collect the nav links, forms, and other content for toggling -->
|
||||
<div class="navbar-collapse collapse">
|
||||
<ul class="nav navbar-nav" id="mainmenu">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/">Overview</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/quick-start-guide/">Quick Start Guide</a></li>
|
||||
<li class="panel">
|
||||
<a href="#installing-rancher" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Installing Rancher<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="installing-rancher">
|
||||
<li>
|
||||
<a href="#installing-server" data-toggle="collapse" class="collapsed" data-parent="#installing-server">Installing Rancher server<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse" id="installing-server">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/installing-rancher/installing-server/"><i class="fa fa-angle-double-right"></i>Single Node</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/installing-rancher/installing-server/multi-nodes/"><i class="fa fa-angle-double-right"></i>Multi Nodes</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/installing-rancher/installing-server/basic-ssl-config/"><i class="fa fa-angle-double-right"></i>Basic SSL Configuration</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/installing-rancher/installing-server/no-internet-access/"><i class="fa fa-angle-double-right"></i>No Internet Access</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/hosts/">Adding Hosts</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#upgrading" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Upgrading Rancher<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="upgrading">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/upgrading/">Single Node</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/upgrading/multi-nodes/">Multi Nodes</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#configuration" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Rancher Configuration<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="configuration">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/configuration/access-control/">Access Control</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/configuration/accounts/">Accounts</a></li>
|
||||
<li>
|
||||
<a href="#settings" data-toggle="collapse" class="collapsed" data-parent="#settings">Settings <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="settings">
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/configuration/settings/#host-registration"><i class="fa fa-angle-double-right"></i>Host-Registration</a></li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/configuration/settings/#catalog"><i class="fa fa-angle-double-right"></i>Catalog</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/configuration/machine-drivers/">Machine Drivers</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#environments" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Environments <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="environments">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/environments/">Environments</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/environments/registries/">Registries</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/environments/certificates/">Certificates</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#hosts" data-toggle="collapse" class="collapsed" data-parent="#mainmenu">Hosts <i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="hosts">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/hosts/">Getting Started with Hosts</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/hosts/custom/">Adding Custom Hosts</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/hosts/amazon/">Adding Amazon EC2 Hosts</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/hosts/azure/">Adding Azure Hosts</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/hosts/digitalocean/">Adding DigitalOcean Hosts</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/hosts/exoscale/">Adding Exoscale Hosts</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/hosts/packet/">Adding Packet Hosts</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/hosts/rackspace/">Adding Rackspace Hosts</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/hosts/other/">Adding Hosts from Other Cloud Providers</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#rancherservice" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Rancher Infrastructure Services<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="rancherservice">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-services/networking">Networking</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-services/load-balancer">Load Balancer</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-services/dns-service/">DNS Service</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-services/metadata-service/">Metadata Service</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-services/storage-service/">Persistent Storage Service</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-services/audit-log/">Audit Logging</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/rancher-services/service-accounts/">Service Accounts</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#cattle" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Cattle<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="cattle">
|
||||
<li><a class="hash" href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/stacks">Stacks</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/adding-services/">Adding Services</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/adding-load-balancers/">Adding Load Balancers</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/adding-external-services/">Adding External Services</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/adding-service-alias/">Adding Service Alias</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/health-checks/">Health Checks</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/scheduling/">Scheduling Services</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/internal-dns-service/">Internal DNS Service in Cattle Environments</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/external-dns-service/">External DNS Service using Route 53</a></li>
|
||||
<li class="panel">
|
||||
<a href="#rancher-compose" class="collapsed" data-toggle="collapse" data-parent="#cattle">Rancher-Compose<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="rancher-compose">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/rancher-compose/">Rancher Compose</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/rancher-compose/commands/">Commands and Options</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/rancher-compose/upgrading/">Upgrading Services</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/rancher-compose/environment-interpolation/">Environment Interpolation</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/rancher-compose/build/">Building with AWS S3</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cattle/labels/"> Labels in Rancher</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#kubernetes" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Kubernetes<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="kubernetes">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/kubernetes/">Kubernetes</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/kubernetes/ingress/">Ingress Support</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/kubernetes/k8s-internal-dns-service/">Internal DNS Service in Kubernetes Environments</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/mesos/">Mesos</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/swarm/">Swarm</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/native-docker/">Using Native Docker CLI with Rancher</a></li>
|
||||
<li class="panel">
|
||||
<a href="#catalog" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Rancher Catalog<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="catalog">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/catalog/">Catalog</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/catalog/private-catalog/">Creating Private Catalogs</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#cli" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Rancher CLI<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="cli">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cli/">Rancher CLI</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cli/commands/">Commands and Options</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/cli/environment-interpolation/">Environment Interpolation</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<!--<li class="panel">
|
||||
<a href="#api" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">API<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="api">
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/">How to use the API</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/access-control/">Setting up Access Control using the API</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-keys/">What are API Keys</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/common/">Common Resource Fields</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/api-resources/">API Resources</a></li>
|
||||
</ul>
|
||||
</li>-->
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/api/" data-toggle="refresh">API Documentation</a></li>
|
||||
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/contributing/">Contributing to Rancher</a></li>
|
||||
<li class="panel">
|
||||
<a href="#faqs" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">FAQs<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="faqs">
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/faqs/server/">FAQs about Rancher Server</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/faqs/agents/">FAQs about Rancher Agents/Hosts</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/{{page.version}}/{{page.lang}}/faqs/troubleshooting/">Troubleshooting FAQS</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="panel">
|
||||
<a href="#docsarchive1" class="collapsed" data-toggle="collapse" data-parent="#mainmenu">Docs Archive<i class="pull-right fa fa-angle-down"></i><i class="pull-right fa fa-angle-up"></i></a>
|
||||
<ul class="collapse list-group-submenu" id="docsarchive1">
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.1/{{page.lang}}/" data-toggle="refresh">Rancher v1.1</a></li>
|
||||
<li><a href="{{site.baseurl}}/rancher/v1.0/{{page.lang}}/" data-toggle="refresh">Rancher v1.0</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul><!-- /.navbar-nav -->
|
||||
</div><!-- /.navbar-collapse -->
|
||||
|
||||
<!--language select
|
||||
<div class="btn-group" role="group" aria-label="...">
|
||||
<a class="btn btn-default btn-xs" href="{{site.baseurl}}/rancher/{{page.version}}/en/">English</a>
|
||||
<a class="btn btn-default btn-xs" href="{{site.baseurl}}/rancher/{{page.version}}/zh/">Chinese</a>
|
||||
</div>
|
||||
-->
|
||||
</div> <!-- /.navbar-inverse -->
|
||||
</div> <!-- /.sidebar-nav -->
|
28
docs/_includes/volume-sidebar.html
Normal file
@ -0,0 +1,28 @@
|
||||
<div class="sidebar-nav">
|
||||
<div class="navbar navbar-inverse" role="navigation">
|
||||
|
||||
<!-- Brand and Toggle get grouped for better mobile display -->
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
|
||||
<span class="sr-only">Toggle navigation</span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<a class="navbar-brand" href="http://rancher.com/"><img src="{{site.baseurl}}/img/rancher-logo-nopadding.svg"></a>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
<!-- Collect the nav links, forms, and other content for toggling -->
|
||||
<div class="navbar-collapse collapse" >
|
||||
<ul class="nav navbar-nav" id="mainmenu">
|
||||
<li><a href="{{site.baseurl}}/volume/">Overview</a></li>
|
||||
<li><a href="{{site.baseurl}}/volume/quick-start-guide/">Quick Start Guide</a></li>
|
||||
<li><a href="{{site.baseurl}}/volume/command-line-tools/">Command Line Tools</a></li>
|
||||
<li><a href="{{site.baseurl}}/volume/contributing/">Contributing to RancherOS</a></li>
|
||||
<li><a href="{{site.baseurl}}/volume/faqs/">FAQs</a></li>
|
||||
</ul><!-- /.navbar-nav -->
|
||||
</div><!-- /.navbar-collapse -->
|
||||
|
||||
|
||||
</div> <!-- /.navbar-inverse -->
|
||||
</div> <!-- /.sidebar-nav -->
|
44
docs/_layouts/os-default.html
Normal file
@ -0,0 +1,44 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>{{ page.title }}</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta name="description" content="{{ site.description }}">
|
||||
<link rel="shortcut icon" type="image/png" href="/favicon.png" sizes="16x16">
|
||||
<link href="{{site.baseurl}}/css/bootstrap.css" rel="stylesheet">
|
||||
<link href="{{site.baseurl}}/css/syntax.css" rel="stylesheet">
|
||||
<link href="{{site.baseurl}}/css/rancher.css" rel="stylesheet">
|
||||
<link rel="stylesheet" href="{{site.baseurl}}/vendor/font-awesome/css/font-awesome.min.css">
|
||||
<link rel="stylesheet" href="{{site.baseurl}}/vendor/lato/lato.css">
|
||||
</head>
|
||||
<body>
|
||||
<div class="container-fluid">
|
||||
<div class="row body" >
|
||||
<div class="col-sm-3">
|
||||
{% include os-sidebar.html %}
|
||||
</div>
|
||||
<div class="col-sm-9">
|
||||
<div class="content-container">
|
||||
{{ content }}
|
||||
|
||||
<footer class="clearfix">
|
||||
<div class="copyright pull-left" >Copyright © 2016 <a href="http://rancher.com">Rancher Labs</a>. All Rights Reserved.</div>
|
||||
<a class="btn btn-primary pull-right" href="https://github.com/rancher/rancher.github.io/tree/master/{{page.path }}">Edit this page <i class="fa fa-pencil"></i></a>
|
||||
</div>
|
||||
</footer>
|
||||
</div>
|
||||
</div>
|
||||
<!-- <div class="col-sm-12">
|
||||
<div class="row">
|
||||
<span class="copyright" >Copyright © 2016 <a href="http://rancher.com">Rancher Labs</a>. All Rights Reserved.</span>
|
||||
</div>
|
||||
</div> -->
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
<script src="{{site.baseurl}}/vendor/jquery.js"></script>
|
||||
<script src="{{site.baseurl}}/vendor/bootstrap.js"></script>
|
||||
<script src="{{site.baseurl}}/js/rancher.js"></script>
|
||||
</html>
|
47
docs/_layouts/rancher-api-default-v1.0.html
Normal file
@ -0,0 +1,47 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>{{ page.title }}</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta name="description" content="{{ site.description }}">
|
||||
<link rel="shortcut icon" type="image/png" href="/favicon.png" sizes="16x16">
|
||||
<link href="{{site.baseurl}}/css/bootstrap.css" rel="stylesheet">
|
||||
<link href="{{site.baseurl}}/css/syntax.css" rel="stylesheet">
|
||||
<link href="{{site.baseurl}}/css/rancher.css" rel="stylesheet">
|
||||
<link rel="stylesheet" href="{{site.baseurl}}/vendor/font-awesome/css/font-awesome.min.css">
|
||||
<link rel="stylesheet" href="{{site.baseurl}}/vendor/lato/lato.css">
|
||||
</head>
|
||||
<body>
|
||||
<div class="container-fluid">
|
||||
<div class="row body" >
|
||||
<div class="col-sm-3">
|
||||
{% include rancher-api-sidebar-v1.0.html %}
|
||||
</div>
|
||||
<div class="col-sm-9">
|
||||
<div class="content-container">
|
||||
{{ content }}
|
||||
|
||||
<footer class="clearfix">
|
||||
<div class="copyright pull-left" >Copyright © 2016 <a href="http://rancher.com">Rancher Labs</a>. All Rights Reserved.</div>
|
||||
<a class="btn btn-primary pull-right" href="https://github.com/rancher/rancher.github.io/tree/master/{{page.path }}">Edit this page <i class="fa fa-pencil"></i></a>
|
||||
</div>
|
||||
</footer>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Start of Async HubSpot Analytics Code -->
|
||||
<script type="text/javascript">
|
||||
(function(d,s,i,r) {
|
||||
if (d.getElementById(i)){return;}
|
||||
var n=d.createElement(s),e=d.getElementsByTagName(s)[0];
|
||||
n.id=i;n.src='//js.hs-analytics.net/analytics/'+(Math.ceil(new Date()/r)*r)+'/468859.js';
|
||||
e.parentNode.insertBefore(n, e);
|
||||
})(document,"script","hs-analytics",300000);
|
||||
</script>
|
||||
<!-- End of Async HubSpot Analytics Code -->
|
||||
</body>
|
||||
<script src="{{site.baseurl}}/vendor/jquery.js"></script>
|
||||
<script src="{{site.baseurl}}/vendor/bootstrap.js"></script>
|
||||
<script src="{{site.baseurl}}/js/rancher.js"></script>
|
||||
</html>
|
47
docs/_layouts/rancher-api-default-v1.1.html
Normal file
@ -0,0 +1,47 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>{{ page.title }}</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta name="description" content="{{ site.description }}">
|
||||
<link rel="shortcut icon" type="image/png" href="/favicon.png" sizes="16x16">
|
||||
<link href="{{site.baseurl}}/css/bootstrap.css" rel="stylesheet">
|
||||
<link href="{{site.baseurl}}/css/syntax.css" rel="stylesheet">
|
||||
<link href="{{site.baseurl}}/css/rancher.css" rel="stylesheet">
|
||||
<link rel="stylesheet" href="{{site.baseurl}}/vendor/font-awesome/css/font-awesome.min.css">
|
||||
<link rel="stylesheet" href="{{site.baseurl}}/vendor/lato/lato.css">
|
||||
</head>
|
||||
<body>
|
||||
<div class="container-fluid">
|
||||
<div class="row body" >
|
||||
<div class="col-sm-3">
|
||||
{% include rancher-api-sidebar-v1.1.html %}
|
||||
</div>
|
||||
<div class="col-sm-9">
|
||||
<div class="content-container">
|
||||
{{ content }}
|
||||
|
||||
<footer class="clearfix">
|
||||
<div class="copyright pull-left" >Copyright © 2016 <a href="http://rancher.com">Rancher Labs</a>. All Rights Reserved.</div>
|
||||
<a class="btn btn-primary pull-right" href="https://github.com/rancher/rancher.github.io/tree/master/{{page.path }}">Edit this page <i class="fa fa-pencil"></i></a>
|
||||
</div>
|
||||
</footer>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Start of Async HubSpot Analytics Code -->
|
||||
<script type="text/javascript">
|
||||
(function(d,s,i,r) {
|
||||
if (d.getElementById(i)){return;}
|
||||
var n=d.createElement(s),e=d.getElementsByTagName(s)[0];
|
||||
n.id=i;n.src='//js.hs-analytics.net/analytics/'+(Math.ceil(new Date()/r)*r)+'/468859.js';
|
||||
e.parentNode.insertBefore(n, e);
|
||||
})(document,"script","hs-analytics",300000);
|
||||
</script>
|
||||
<!-- End of Async HubSpot Analytics Code -->
|
||||
</body>
|
||||
<script src="{{site.baseurl}}/vendor/jquery.js"></script>
|
||||
<script src="{{site.baseurl}}/vendor/bootstrap.js"></script>
|
||||
<script src="{{site.baseurl}}/js/rancher.js"></script>
|
||||
</html>
|
47
docs/_layouts/rancher-api-default-v1.2.html
Normal file
@ -0,0 +1,47 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>{{ page.title }}</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta name="description" content="{{ site.description }}">
|
||||
<link rel="shortcut icon" type="image/png" href="/favicon.png" sizes="16x16">
|
||||
<link href="{{site.baseurl}}/css/bootstrap.css" rel="stylesheet">
|
||||
<link href="{{site.baseurl}}/css/syntax.css" rel="stylesheet">
|
||||
<link href="{{site.baseurl}}/css/rancher.css" rel="stylesheet">
|
||||
<link rel="stylesheet" href="{{site.baseurl}}/vendor/font-awesome/css/font-awesome.min.css">
|
||||
<link rel="stylesheet" href="{{site.baseurl}}/vendor/lato/lato.css">
|
||||
</head>
|
||||
<body>
|
||||
<div class="container-fluid">
|
||||
<div class="row body" >
|
||||
<div class="col-sm-3">
|
||||
{% include rancher-api-sidebar-v1.2.html %}
|
||||
</div>
|
||||
<div class="col-sm-9">
|
||||
<div class="content-container">
|
||||
{{ content }}
|
||||
|
||||
<footer class="clearfix">
|
||||
<div class="copyright pull-left" >Copyright © 2016 <a href="http://rancher.com">Rancher Labs</a>. All Rights Reserved.</div>
|
||||
<a class="btn btn-primary pull-right" href="https://github.com/rancher/rancher.github.io/tree/master/{{page.path }}">Edit this page <i class="fa fa-pencil"></i></a>
|
||||
</div>
|
||||
</footer>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Start of Async HubSpot Analytics Code -->
|
||||
<script type="text/javascript">
|
||||
(function(d,s,i,r) {
|
||||
if (d.getElementById(i)){return;}
|
||||
var n=d.createElement(s),e=d.getElementsByTagName(s)[0];
|
||||
n.id=i;n.src='//js.hs-analytics.net/analytics/'+(Math.ceil(new Date()/r)*r)+'/468859.js';
|
||||
e.parentNode.insertBefore(n, e);
|
||||
})(document,"script","hs-analytics",300000);
|
||||
</script>
|
||||
<!-- End of Async HubSpot Analytics Code -->
|
||||
</body>
|
||||
<script src="{{site.baseurl}}/vendor/jquery.js"></script>
|
||||
<script src="{{site.baseurl}}/vendor/bootstrap.js"></script>
|
||||
<script src="{{site.baseurl}}/js/rancher.js"></script>
|
||||
</html>
|
47
docs/_layouts/rancher-api-v2-beta-default-v1.2.html
Normal file
@ -0,0 +1,47 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>{{ page.title }}</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta name="description" content="{{ site.description }}">
|
||||
<link rel="shortcut icon" type="image/png" href="/favicon.png" sizes="16x16">
|
||||
<link href="{{site.baseurl}}/css/bootstrap.css" rel="stylesheet">
|
||||
<link href="{{site.baseurl}}/css/syntax.css" rel="stylesheet">
|
||||
<link href="{{site.baseurl}}/css/rancher.css" rel="stylesheet">
|
||||
<link rel="stylesheet" href="{{site.baseurl}}/vendor/font-awesome/css/font-awesome.min.css">
|
||||
<link rel="stylesheet" href="{{site.baseurl}}/vendor/lato/lato.css">
|
||||
</head>
|
||||
<body>
|
||||
<div class="container-fluid">
|
||||
<div class="row body" >
|
||||
<div class="col-sm-3">
|
||||
{% include rancher-api-v2-beta-sidebar-v1.2.html %}
|
||||
</div>
|
||||
<div class="col-sm-9">
|
||||
<div class="content-container">
|
||||
{{ content }}
|
||||
|
||||
<footer class="clearfix">
|
||||
<div class="copyright pull-left" >Copyright © 2016 <a href="http://rancher.com">Rancher Labs</a>. All Rights Reserved.</div>
|
||||
<a class="btn btn-primary pull-right" href="https://github.com/rancher/rancher.github.io/tree/master/{{page.path }}">Edit this page <i class="fa fa-pencil"></i></a>
|
||||
</div>
|
||||
</footer>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Start of Async HubSpot Analytics Code -->
|
||||
<script type="text/javascript">
|
||||
(function(d,s,i,r) {
|
||||
if (d.getElementById(i)){return;}
|
||||
var n=d.createElement(s),e=d.getElementsByTagName(s)[0];
|
||||
n.id=i;n.src='//js.hs-analytics.net/analytics/'+(Math.ceil(new Date()/r)*r)+'/468859.js';
|
||||
e.parentNode.insertBefore(n, e);
|
||||
})(document,"script","hs-analytics",300000);
|
||||
</script>
|
||||
<!-- End of Async HubSpot Analytics Code -->
|
||||
</body>
|
||||
<script src="{{site.baseurl}}/vendor/jquery.js"></script>
|
||||
<script src="{{site.baseurl}}/vendor/bootstrap.js"></script>
|
||||
<script src="{{site.baseurl}}/js/rancher.js"></script>
|
||||
</html>
|
47
docs/_layouts/rancher-default-v1.0.html
Normal file
@ -0,0 +1,47 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>{{ page.title }}</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta name="description" content="{{ site.description }}">
|
||||
<link rel="shortcut icon" type="image/png" href="/favicon.png" sizes="16x16">
|
||||
<link href="{{site.baseurl}}/css/bootstrap.css" rel="stylesheet">
|
||||
<link href="{{site.baseurl}}/css/syntax.css" rel="stylesheet">
|
||||
<link href="{{site.baseurl}}/css/rancher.css" rel="stylesheet">
|
||||
<link rel="stylesheet" href="{{site.baseurl}}/vendor/font-awesome/css/font-awesome.min.css">
|
||||
<link rel="stylesheet" href="{{site.baseurl}}/vendor/lato/lato.css">
|
||||
</head>
|
||||
<body>
|
||||
<div class="container-fluid">
|
||||
<div class="row body" >
|
||||
<div class="col-sm-3">
|
||||
{% include rancher-sidebar-v1.0.html %}
|
||||
</div>
|
||||
<div class="col-sm-9">
|
||||
<div class="content-container">
|
||||
{{ content }}
|
||||
|
||||
<footer class="clearfix">
|
||||
<div class="copyright pull-left" >Copyright © 2016 <a href="http://rancher.com">Rancher Labs</a>. All Rights Reserved.</div>
|
||||
<a class="btn btn-primary pull-right" href="https://github.com/rancher/rancher.github.io/tree/master/{{page.path }}">Edit this page <i class="fa fa-pencil"></i></a>
|
||||
</div>
|
||||
</footer>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Start of Async HubSpot Analytics Code -->
|
||||
<script type="text/javascript">
|
||||
(function(d,s,i,r) {
|
||||
if (d.getElementById(i)){return;}
|
||||
var n=d.createElement(s),e=d.getElementsByTagName(s)[0];
|
||||
n.id=i;n.src='//js.hs-analytics.net/analytics/'+(Math.ceil(new Date()/r)*r)+'/468859.js';
|
||||
e.parentNode.insertBefore(n, e);
|
||||
})(document,"script","hs-analytics",300000);
|
||||
</script>
|
||||
<!-- End of Async HubSpot Analytics Code -->
|
||||
</body>
|
||||
<script src="{{site.baseurl}}/vendor/jquery.js"></script>
|
||||
<script src="{{site.baseurl}}/vendor/bootstrap.js"></script>
|
||||
<script src="{{site.baseurl}}/js/rancher.js"></script>
|
||||
</html>
|
47
docs/_layouts/rancher-default-v1.1.html
Normal file
@ -0,0 +1,47 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>{{ page.title }}</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta name="description" content="{{ site.description }}">
|
||||
<link rel="shortcut icon" type="image/png" href="/favicon.png" sizes="16x16">
|
||||
<link href="{{site.baseurl}}/css/bootstrap.css" rel="stylesheet">
|
||||
<link href="{{site.baseurl}}/css/syntax.css" rel="stylesheet">
|
||||
<link href="{{site.baseurl}}/css/rancher.css" rel="stylesheet">
|
||||
<link rel="stylesheet" href="{{site.baseurl}}/vendor/font-awesome/css/font-awesome.min.css">
|
||||
<link rel="stylesheet" href="{{site.baseurl}}/vendor/lato/lato.css">
|
||||
</head>
|
||||
<body>
|
||||
<div class="container-fluid">
|
||||
<div class="row body" >
|
||||
<div class="col-sm-3">
|
||||
{% include rancher-sidebar-v1.1.html %}
|
||||
</div>
|
||||
<div class="col-sm-9">
|
||||
<div class="content-container">
|
||||
{{ content }}
|
||||
|
||||
<footer class="clearfix">
|
||||
<div class="copyright pull-left" >Copyright © 2016 <a href="http://rancher.com">Rancher Labs</a>. All Rights Reserved.</div>
|
||||
<a class="btn btn-primary pull-right" href="https://github.com/rancher/rancher.github.io/tree/master/{{page.path }}">Edit this page <i class="fa fa-pencil"></i></a>
|
||||
</div>
|
||||
</footer>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Start of Async HubSpot Analytics Code -->
|
||||
<script type="text/javascript">
|
||||
(function(d,s,i,r) {
|
||||
if (d.getElementById(i)){return;}
|
||||
var n=d.createElement(s),e=d.getElementsByTagName(s)[0];
|
||||
n.id=i;n.src='//js.hs-analytics.net/analytics/'+(Math.ceil(new Date()/r)*r)+'/468859.js';
|
||||
e.parentNode.insertBefore(n, e);
|
||||
})(document,"script","hs-analytics",300000);
|
||||
</script>
|
||||
<!-- End of Async HubSpot Analytics Code -->
|
||||
</body>
|
||||
<script src="{{site.baseurl}}/vendor/jquery.js"></script>
|
||||
<script src="{{site.baseurl}}/vendor/bootstrap.js"></script>
|
||||
<script src="{{site.baseurl}}/js/rancher.js"></script>
|
||||
</html>
|
47
docs/_layouts/rancher-default-v1.2.html
Normal file
@ -0,0 +1,47 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>{{ page.title }}</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta name="description" content="{{ site.description }}">
|
||||
<link rel="shortcut icon" type="image/png" href="/favicon.png" sizes="16x16">
|
||||
<link href="{{site.baseurl}}/css/bootstrap.css" rel="stylesheet">
|
||||
<link href="{{site.baseurl}}/css/syntax.css" rel="stylesheet">
|
||||
<link href="{{site.baseurl}}/css/rancher.css" rel="stylesheet">
|
||||
<link rel="stylesheet" href="{{site.baseurl}}/vendor/font-awesome/css/font-awesome.min.css">
|
||||
<link rel="stylesheet" href="{{site.baseurl}}/vendor/lato/lato.css">
|
||||
</head>
|
||||
<body>
|
||||
<div class="container-fluid">
|
||||
<div class="row body" >
|
||||
<div class="col-sm-3">
|
||||
{% include rancher-sidebar-v1.2.html %}
|
||||
</div>
|
||||
<div class="col-sm-9">
|
||||
<div class="content-container">
|
||||
{{ content }}
|
||||
|
||||
<footer class="clearfix">
|
||||
<div class="copyright pull-left" >Copyright © 2016 <a href="http://rancher.com">Rancher Labs</a>. All Rights Reserved.</div>
|
||||
<a class="btn btn-primary pull-right" href="https://github.com/rancher/rancher.github.io/tree/master/{{page.path }}">Edit this page <i class="fa fa-pencil"></i></a>
|
||||
</div>
|
||||
</footer>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Start of Async HubSpot Analytics Code -->
|
||||
<script type="text/javascript">
|
||||
(function(d,s,i,r) {
|
||||
if (d.getElementById(i)){return;}
|
||||
var n=d.createElement(s),e=d.getElementsByTagName(s)[0];
|
||||
n.id=i;n.src='//js.hs-analytics.net/analytics/'+(Math.ceil(new Date()/r)*r)+'/468859.js';
|
||||
e.parentNode.insertBefore(n, e);
|
||||
})(document,"script","hs-analytics",300000);
|
||||
</script>
|
||||
<!-- End of Async HubSpot Analytics Code -->
|
||||
</body>
|
||||
<script src="{{site.baseurl}}/vendor/jquery.js"></script>
|
||||
<script src="{{site.baseurl}}/vendor/bootstrap.js"></script>
|
||||
<script src="{{site.baseurl}}/js/rancher.js"></script>
|
||||
</html>
|
47
docs/_layouts/rancher-default.html
Normal file
@ -0,0 +1,47 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>{{ page.title }}</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta name="description" content="{{ site.description }}">
|
||||
<link rel="shortcut icon" type="image/png" href="/favicon.png" sizes="16x16">
|
||||
<link href="{{site.baseurl}}/css/bootstrap.css" rel="stylesheet">
|
||||
<link href="{{site.baseurl}}/css/syntax.css" rel="stylesheet">
|
||||
<link href="{{site.baseurl}}/css/rancher.css" rel="stylesheet">
|
||||
<link rel="stylesheet" href="{{site.baseurl}}/vendor/font-awesome/css/font-awesome.min.css">
|
||||
<link rel="stylesheet" href="{{site.baseurl}}/vendor/lato/lato.css">
|
||||
</head>
|
||||
<body>
|
||||
<div class="container-fluid">
|
||||
<div class="row body" >
|
||||
<div class="col-sm-3">
|
||||
{% include rancher-sidebar.html %}
|
||||
</div>
|
||||
<div class="col-sm-9">
|
||||
<div class="content-container">
|
||||
{{ content }}
|
||||
|
||||
<footer class="clearfix">
|
||||
<div class="copyright pull-left" >Copyright © 2016 <a href="http://rancher.com">Rancher Labs</a>. All Rights Reserved.</div>
|
||||
<a class="btn btn-primary pull-right" href="https://github.com/rancher/rancher.github.io/tree/master/{{page.path }}">Edit this page <i class="fa fa-pencil"></i></a>
|
||||
</div>
|
||||
</footer>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Start of Async HubSpot Analytics Code -->
|
||||
<script type="text/javascript">
|
||||
(function(d,s,i,r) {
|
||||
if (d.getElementById(i)){return;}
|
||||
var n=d.createElement(s),e=d.getElementsByTagName(s)[0];
|
||||
n.id=i;n.src='//js.hs-analytics.net/analytics/'+(Math.ceil(new Date()/r)*r)+'/468859.js';
|
||||
e.parentNode.insertBefore(n, e);
|
||||
})(document,"script","hs-analytics",300000);
|
||||
</script>
|
||||
<!-- End of Async HubSpot Analytics Code -->
|
||||
</body>
|
||||
<script src="{{site.baseurl}}/vendor/jquery.js"></script>
|
||||
<script src="{{site.baseurl}}/vendor/bootstrap.js"></script>
|
||||
<script src="{{site.baseurl}}/js/rancher.js"></script>
|
||||
</html>
|
37
docs/_layouts/volume-default.html
Normal file
@ -0,0 +1,37 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>{{ site.name }}</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta name="description" content="{{ site.description }}">
|
||||
<link href="{{site.baseurl}}/css/bootstrap.css" rel="stylesheet">
|
||||
<link href="{{site.baseurl}}/css/syntax.css" rel="stylesheet">
|
||||
<link href="{{site.baseurl}}/css/rancher.css" rel="stylesheet">
|
||||
<link rel="stylesheet" href="{{site.baseurl}}/vendor/font-awesome/css/font-awesome.min.css">
|
||||
<link rel="stylesheet" href="{{site.baseurl}}/vendor/lato/lato.css">
|
||||
</head>
|
||||
<body>
|
||||
<div class="container-fluid">
|
||||
<div class="row body" >
|
||||
<div class="col-sm-3">
|
||||
{% include volume-sidebar.html %}
|
||||
</div>
|
||||
<div class="col-sm-9">
|
||||
<div class="content-container">
|
||||
{{ content }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-12">
|
||||
<div class="row">
|
||||
<span class="copyright" >Copyright © 2016 <a href="http://rancher.com">Rancher Labs</a>. All Rights Reserved.</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
<script src="{{site.baseurl}}/vendor/jquery.js"></script>
|
||||
<script src="{{site.baseurl}}/vendor/bootstrap.js"></script>
|
||||
<script src="{{site.baseurl}}/js/rancher.js"></script>
|
||||
</html>
|
6585
docs/css/bootstrap.css
vendored
Normal file
5
docs/css/bootstrap.min.css
vendored
Normal file
685
docs/css/rancher.css
Normal file
@ -0,0 +1,685 @@
|
||||
.sidebar-nav .btn-group {
|
||||
margin: 15px 0 0 15px;
|
||||
}
|
||||
|
||||
BODY {
|
||||
background-color: #f0f2f2;
|
||||
font-family: 'Lato', sans-serif;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
img {
|
||||
max-width: 100%;
|
||||
height: auto;
|
||||
}
|
||||
|
||||
/* make sidebar nav vertical */
|
||||
@media (min-width: 768px) {
|
||||
.sidebar-nav .navbar .navbar-collapse {
|
||||
padding: 0;
|
||||
max-height: none;
|
||||
}
|
||||
.sidebar-nav .navbar ul {
|
||||
float: none;
|
||||
}
|
||||
.sidebar-nav .navbar ul:not {
|
||||
display: block;
|
||||
}
|
||||
.sidebar-nav .navbar li {
|
||||
float: none;
|
||||
display: block;
|
||||
}
|
||||
.sidebar-nav .navbar li a {
|
||||
padding-top: 8px;
|
||||
padding-bottom: 8px;
|
||||
font-weight: 300;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
pre {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
background-color: transparent;
|
||||
border: none;
|
||||
border-radius: 0;
|
||||
}
|
||||
|
||||
pre code {
|
||||
display: block;
|
||||
padding: 9.5px;
|
||||
font-size: 13px;
|
||||
line-height: 1.42857143;
|
||||
color: #ECF0F1;
|
||||
word-break: break-all;
|
||||
word-wrap: break-word;
|
||||
background-color: #334851;
|
||||
border: 1px solid #0A141A;
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
.language-bash pre code{
|
||||
padding: 9.5px;
|
||||
margin: 0 0 10px;
|
||||
font-size: 13px;
|
||||
line-height: 1.42857143;
|
||||
word-break: break-all;
|
||||
word-wrap: break-word;
|
||||
border-radius: 4px;
|
||||
border: black;
|
||||
background-color: #2B2B2B;
|
||||
color: #ECF0F1;
|
||||
}
|
||||
|
||||
.language-sh pre code{
|
||||
padding: 9.5px;
|
||||
margin: 0 0 10px;
|
||||
font-size: 13px;
|
||||
line-height: 1.42857143;
|
||||
word-break: break-all;
|
||||
word-wrap: break-word;
|
||||
border-radius: 4px;
|
||||
border: black;
|
||||
background-color: black;
|
||||
color: white;
|
||||
}
|
||||
|
||||
/* Link Color in Content*/
|
||||
a {
|
||||
color: #005f88;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a:hover,
|
||||
a:focus {
|
||||
color: #0077aa;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
/* Heading in Markdown using # */
|
||||
h1, h2 {
|
||||
font-weight: 300;
|
||||
}
|
||||
|
||||
/*h3 {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
h3:before, h3:after {
|
||||
content: "";
|
||||
width: 50px;
|
||||
height: 3px;
|
||||
background: #5c686f;
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
margin: 0 10px;
|
||||
}
|
||||
*/
|
||||
/*HEADERS*/
|
||||
h1, h2 {
|
||||
font-weight: 300;
|
||||
}
|
||||
|
||||
h3,
|
||||
h4,
|
||||
h5,
|
||||
h6 {
|
||||
text-transform: uppercase;
|
||||
color: #5c686f;
|
||||
letter-spacing: .75px;
|
||||
}
|
||||
h3,
|
||||
h4,
|
||||
h5,
|
||||
h6 {
|
||||
text-transform: uppercase;
|
||||
color: #5c686f;
|
||||
font-weight: 900;
|
||||
}
|
||||
h3 {
|
||||
color: #334851;
|
||||
}
|
||||
/* Line bar in markdown as --- */
|
||||
hr {
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
/*Remove rounded corners on navigation*/
|
||||
@media (min-width: 768px) {
|
||||
.navbar {
|
||||
border-radius: 0px;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* Remove right and left padding on column containers for */
|
||||
.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
|
||||
padding-right: 0px;
|
||||
padding-left: 0px;
|
||||
}
|
||||
.container {
|
||||
margin-right: 0;
|
||||
margin-left: 0;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
/*Provides padding around context*/
|
||||
.content-container {
|
||||
padding-left: 5%;
|
||||
max-width: 80%;
|
||||
}
|
||||
|
||||
.navbar-inverse {
|
||||
background:#fff;
|
||||
border: none;
|
||||
color: #5c686f;
|
||||
}
|
||||
|
||||
|
||||
.navbar-inverse .navbar-nav > li > a {
|
||||
color: #777;
|
||||
font-weight: normal;
|
||||
}
|
||||
.navbar-inverse .navbar-nav > li > a:hover,
|
||||
.navbar-inverse .navbar-nav > li > a:focus {
|
||||
color: #0075a8;
|
||||
background-color: transparent;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.navbar-inverse .navbar-nav > li > .no-list-group {
|
||||
color: #788188;
|
||||
}
|
||||
.navbar-inverse .navbar-nav > li > .no-list-group:hover,
|
||||
.navbar-inverse .navbar-nav > li > .no-list-group:focus {
|
||||
background-color: #5c686f;
|
||||
color:#0075a8;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.list-group-item {
|
||||
position: relative;
|
||||
display: block;
|
||||
padding: 10px 10px;
|
||||
margin-bottom: -1px;
|
||||
background-color: transparent;
|
||||
border: none;
|
||||
}
|
||||
|
||||
.list-group-submenu li {
|
||||
list-style: none;
|
||||
margin-left: 0;
|
||||
margin-bottom:7px;
|
||||
color:#788188;
|
||||
padding:0;
|
||||
}
|
||||
|
||||
span.highlight {
|
||||
background-color: yellow;
|
||||
}
|
||||
|
||||
blockquote {
|
||||
font-size: inherit;
|
||||
}
|
||||
|
||||
code{
|
||||
padding:2px 5px;
|
||||
display:inline-block;
|
||||
background: #21364a;
|
||||
color: #0075a8;
|
||||
}
|
||||
|
||||
.row{
|
||||
width:100%;
|
||||
position:relative;
|
||||
display:inline-block;
|
||||
}
|
||||
|
||||
.row .col-sm-3{
|
||||
background-color: #fff;
|
||||
}
|
||||
.copyright {
|
||||
height: 34px;
|
||||
line-height: 34px;
|
||||
}
|
||||
a i {
|
||||
font-size: 16px;
|
||||
margin-top: 3px;
|
||||
padding-right:10px;
|
||||
}
|
||||
a.btn i {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
a.collapsed i.fa-angle-down, a i.fa-angle-up{
|
||||
display:block;
|
||||
}
|
||||
|
||||
a.collapsed i.fa-angle-up, a i.fa-angle-down{
|
||||
display:none;
|
||||
}
|
||||
|
||||
/*ul li a[aria-expanded=true]{
|
||||
background-color: #ecf0f1;
|
||||
}*/
|
||||
|
||||
/*NESTED SUBMENU*/
|
||||
ul.nav.navbar-nav li ul.list-group-submenu {
|
||||
border-left: solid #0075a8 thick;
|
||||
padding: 12px;
|
||||
}
|
||||
ul.nav.navbar-nav li ul.list-group-submenu li ul{
|
||||
border-left: solid rgba(0,0,0,.75) thick;
|
||||
padding-left: 40px;
|
||||
margin-left: -17px;
|
||||
}
|
||||
ul.nav.navbar-nav li ul.list-group-submenu li ul ul {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
border: none;
|
||||
margin-left: 27px;
|
||||
}
|
||||
ul.collapse {
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.navbar-inverse .clearfix{
|
||||
background-color:#0075A8;
|
||||
}
|
||||
|
||||
.sidebar-nav{
|
||||
background-color: #5c686f;
|
||||
}
|
||||
|
||||
.navbar-inverse .navbar-nav > li > a.active {
|
||||
background: #5c686f;
|
||||
color: white;
|
||||
}
|
||||
ul.nav.navbar-nav li a.active:after {
|
||||
content: "";
|
||||
border: solid transparent;
|
||||
height: 0;
|
||||
width: 0;
|
||||
pointer-events: none;
|
||||
border-color: transparent;
|
||||
border-left-color: #5c686f;
|
||||
border-width: 10px;
|
||||
position: absolute;
|
||||
right: -20px;
|
||||
top: calc(50% - 10px);
|
||||
}
|
||||
|
||||
ul.nav.navbar-nav .list-group-submenu li a.active:after {
|
||||
display: none;
|
||||
}
|
||||
|
||||
ul.collapse.in a.active {
|
||||
color: #0075A8;
|
||||
}
|
||||
.panel {
|
||||
margin-bottom: 0px;
|
||||
border: 0px;
|
||||
border-radius: 0px;
|
||||
-webkit-box-shadow:none;
|
||||
box-shadow:none;
|
||||
}
|
||||
|
||||
@media (max-width:768px){
|
||||
|
||||
.col-sm-9 .content-container{
|
||||
padding-left: 15px;
|
||||
}
|
||||
.row .col-sm-3 {f
|
||||
height: auto;
|
||||
min-height: 0px;
|
||||
}
|
||||
.container-fluid{
|
||||
padding:0;
|
||||
}
|
||||
|
||||
.row{
|
||||
width:100%;
|
||||
padding:0;
|
||||
margin:0;
|
||||
}
|
||||
|
||||
.row .col-sm-3{
|
||||
width:100%;
|
||||
top:auto;
|
||||
left:auto;
|
||||
bottom:auto;
|
||||
position:relative;
|
||||
background-color: #5c686f;
|
||||
}
|
||||
|
||||
.row .col-sm-9{
|
||||
position:relative;
|
||||
width:100%;
|
||||
float:right;
|
||||
}
|
||||
}
|
||||
|
||||
.header-anchor {
|
||||
font-size: 14px;
|
||||
visibility: hidden;
|
||||
position: relative;
|
||||
top: -3px;
|
||||
left: 5px;
|
||||
}
|
||||
|
||||
H3:hover .header-anchor,
|
||||
H4:hover .header-anchor,
|
||||
H5:hover .header-anchor,
|
||||
H6:hover .header-anchor {
|
||||
visibility: visible;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
/*ANCHORS*/
|
||||
a {
|
||||
color: #0075a8;
|
||||
text-decoration: none;
|
||||
}
|
||||
a:hover {
|
||||
text-decoration: none;
|
||||
}
|
||||
hr {
|
||||
margin: 2% 0;
|
||||
border-top: 1px solid #BFBFBF;
|
||||
}
|
||||
|
||||
/*LISTS*/
|
||||
ol {
|
||||
counter-reset: li;
|
||||
margin: 20px 0;
|
||||
padding-left: 0;
|
||||
}
|
||||
|
||||
ol > li {
|
||||
position: relative;
|
||||
margin: 0 0 25px 2em;
|
||||
padding: 4px 8px 4px 20px;
|
||||
list-style: none;
|
||||
background: rgba(255,255,255,.75);
|
||||
}
|
||||
|
||||
ol > li::before {
|
||||
content: counter(li);
|
||||
counter-increment: li;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: -2em;
|
||||
bottom: 0;
|
||||
width: 2em;
|
||||
margin-right: 8px;
|
||||
padding: 4px;
|
||||
font-weight: bold;
|
||||
text-align: center;
|
||||
background: #BDC3C7;
|
||||
color: white;
|
||||
}
|
||||
|
||||
li ol,
|
||||
li ul {
|
||||
margin-top: 6px;
|
||||
}
|
||||
|
||||
ol ol li:last-child {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
ol > li::before {
|
||||
|
||||
}
|
||||
|
||||
/*TABLES*/
|
||||
table {
|
||||
background: white;
|
||||
width: 100%;
|
||||
border-collapse: collapse;
|
||||
word-wrap:break-word;
|
||||
}
|
||||
|
||||
th {
|
||||
background: #0075a8;
|
||||
color: white;
|
||||
font-weight: 400;
|
||||
}
|
||||
|
||||
th a {
|
||||
color: #efefef;
|
||||
border-bottom: solid 2px;
|
||||
}
|
||||
td,
|
||||
th {
|
||||
padding: 10px;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
td {
|
||||
border: 1px solid #ccd1d3;
|
||||
}
|
||||
|
||||
th {
|
||||
border-right: 1px dotted rgba(255, 255, 255, 0.15);
|
||||
border-bottom: 1px dotted rgba(255, 255, 255, 0.15);
|
||||
}
|
||||
|
||||
tr:nth-child(even) {
|
||||
background: #efefef;
|
||||
}
|
||||
td code {
|
||||
background: rgba(0,0,0,.05);
|
||||
}
|
||||
|
||||
.gsc-search-box td, .gsc-results-wrapper-overlay td {
|
||||
border-color: transparent;
|
||||
}
|
||||
|
||||
.gsc-table-result td {
|
||||
border-bottom: solid 2px #efefef;
|
||||
padding-bottom: 30px;
|
||||
}
|
||||
.gsc-search-box td, .gsc-above-wrapper-area-container td {
|
||||
padding: 0;
|
||||
|
||||
}
|
||||
.cse .gsc-search-button input.gsc-search-button-v2, input.gsc-search-button-v2 {
|
||||
width: auto!important;
|
||||
height: auto!important;
|
||||
}
|
||||
|
||||
.gsc-above-wrapper-area .gsc-selected-option-container {
|
||||
min-width: 100px;
|
||||
}
|
||||
|
||||
.gsc-results-wrapper-overlay {
|
||||
-webkit-box-shadow: 0 0 0 transparent!important;
|
||||
-moz-box-shadow: 0 0 0 transparent!important;
|
||||
-ms-box-shadow: 0 0 0 transparent!important;
|
||||
-o-box-shadow: 0 0 0 transparent!important;
|
||||
box-shadow: 0 0 0 transparent!important;
|
||||
}
|
||||
.gsc-modal-background-image {
|
||||
background-color: rgba(153,163,168,.75)!important;
|
||||
}
|
||||
/*CODE SNIPPETS*/
|
||||
code {
|
||||
word-wrap:break-word;
|
||||
border-radius: 3px;
|
||||
color: #444;
|
||||
background-color: #ddd;
|
||||
}
|
||||
|
||||
|
||||
/*BLOCKQUOTES*/
|
||||
blockquote {
|
||||
border-left: solid thick #0075a8;
|
||||
padding: 1% 5%;
|
||||
position: relative;
|
||||
background: white;
|
||||
margin-left: 0;
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
blockquote:before {
|
||||
content: "";
|
||||
border: solid transparent;
|
||||
content: " ";
|
||||
height: 0;
|
||||
width: 0;
|
||||
position: absolute;
|
||||
pointer-events: none;
|
||||
border-color: transparent;
|
||||
border-left-color: #0075a8;
|
||||
border-width: 8px;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
top: calc(50% - 8px);
|
||||
}
|
||||
|
||||
blockquote strong:first-child{
|
||||
display: block;
|
||||
text-transform: uppercase;
|
||||
margin-bottom: 10px;
|
||||
color: #5c686f;
|
||||
}
|
||||
|
||||
/*ACTIONS*/
|
||||
#other-actions p:first-child {
|
||||
margin: 0;
|
||||
}
|
||||
.action > span {
|
||||
display: block;
|
||||
}
|
||||
.action .header {
|
||||
color: #0075a8;
|
||||
font-weight: bold;
|
||||
text-transform: uppercase;
|
||||
background-color: #99c8dc;
|
||||
float: left;
|
||||
width: 100%;
|
||||
line-height: 48px;
|
||||
padding-left: 10px;
|
||||
}
|
||||
.action .header > *{
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
.action .header .headerright {
|
||||
float: right;
|
||||
background: #66accb;
|
||||
color: white;
|
||||
padding: 8px 10px;
|
||||
text-transform: none;
|
||||
line-height: normal;
|
||||
}
|
||||
|
||||
.action .header .headerright code {
|
||||
color: white;
|
||||
background: #3391b9;
|
||||
margin-left: 10px;
|
||||
padding: 8px;
|
||||
font-weight: normal;
|
||||
text-transform: none;
|
||||
}
|
||||
|
||||
.action{
|
||||
border: solid thin #efefef;
|
||||
background: white;
|
||||
display: block;
|
||||
margin: 10px 0;
|
||||
}
|
||||
.action-contents{
|
||||
padding:20px;
|
||||
border: solid thin #efefef;
|
||||
background: white;
|
||||
clear: both;
|
||||
}
|
||||
.action-contents th {
|
||||
background: #66767c;
|
||||
}
|
||||
.input, .output{
|
||||
background-color: #e5f1f6;
|
||||
padding: 10px 0;
|
||||
display: block;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.input strong, .output strong {
|
||||
padding: 10px;
|
||||
background: #99c8dc;
|
||||
position: relative;
|
||||
margin-right: 15px;
|
||||
}
|
||||
|
||||
.input strong:before,.output strong:before {
|
||||
content: "";
|
||||
border: solid transparent;
|
||||
content: " ";
|
||||
height: 0;
|
||||
width: 0;
|
||||
position: absolute;
|
||||
pointer-events: none;
|
||||
border-color: transparent;
|
||||
border-left-color: #99c8dc;
|
||||
border-width: 8px;
|
||||
position: absolute;
|
||||
right: -15px;
|
||||
top: calc(50% - 8px);
|
||||
}
|
||||
|
||||
footer {
|
||||
margin: 20px 0;
|
||||
padding: 10px 0;
|
||||
border-top: solid thin #BDC3C7;
|
||||
height: 34px;
|
||||
clear: both;
|
||||
}
|
||||
@media (max-width:768px){
|
||||
.navbar-inverse .navbar-toggle {
|
||||
background: rgba(0,0,0,.25);
|
||||
}
|
||||
.navbar-inverse .navbar-toggle:hover, .navbar-inverse .navbar-toggle:focus {
|
||||
background: rgba(0,0,0,.5);
|
||||
}
|
||||
.navbar-inverse .navbar-header{
|
||||
background: #0075a8;
|
||||
}
|
||||
|
||||
.col-sm-9 .content-container{
|
||||
padding: 0 2%;
|
||||
max-width: 100%;
|
||||
}
|
||||
.row .col-sm-3 {
|
||||
height: auto !important;
|
||||
min-height: 0px !important;
|
||||
}
|
||||
.container-fluid{
|
||||
padding:0;
|
||||
}
|
||||
|
||||
.row{
|
||||
width:100%;
|
||||
padding:0;
|
||||
margin:0;
|
||||
}
|
||||
|
||||
.row .col-sm-3{
|
||||
width:100%;
|
||||
top:auto;
|
||||
left:auto;
|
||||
bottom:auto;
|
||||
position:relative;
|
||||
background-color:#f2efef;
|
||||
}
|
||||
|
||||
.row .col-sm-9{
|
||||
position:relative;
|
||||
width:100%;
|
||||
float:right;
|
||||
}
|
||||
}
|
62
docs/css/syntax.css
Normal file
@ -0,0 +1,62 @@
|
||||
.highlight .c { color: #66767C; font-style: italic } /* Comment */
|
||||
.highlight .err { color: #ffffff } /* Error */
|
||||
.highlight .k { font-weight: bold } /* Keyword */
|
||||
.highlight .o { font-weight: bold } /* Operator */
|
||||
.highlight .cm { color: #999988; font-style: italic } /* Comment.Multiline */
|
||||
.highlight .cp { color: #999999; font-weight: bold } /* Comment.Preproc */
|
||||
.highlight .c1 { color: #999988; font-style: italic } /* Comment.Single */
|
||||
.highlight .cs { color: #999999; font-weight: bold; font-style: italic } /* Comment.Special */
|
||||
.highlight .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */
|
||||
.highlight .gd .x { color: #000000; background-color: #ffaaaa } /* Generic.Deleted.Specific */
|
||||
.highlight .ge { font-style: italic } /* Generic.Emph */
|
||||
.highlight .gr { color: #C0392B } /* Generic.Error */
|
||||
.highlight .gh { color: #999999 } /* Generic.Heading */
|
||||
.highlight .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */
|
||||
.highlight .gi .x { color: #000000; background-color: #aaffaa } /* Generic.Inserted.Specific */
|
||||
.highlight .go { color: #888888 } /* Generic.Output */
|
||||
.highlight .gp { color: #555555 } /* Generic.Prompt */
|
||||
.highlight .gs { font-weight: bold } /* Generic.Strong */
|
||||
.highlight .gu { color: #aaaaaa } /* Generic.Subheading */
|
||||
.highlight .gt { color: #C0392B } /* Generic.Traceback */
|
||||
.highlight .kc { font-weight: bold } /* Keyword.Constant */
|
||||
.highlight .kd { font-weight: bold } /* Keyword.Declaration */
|
||||
.highlight .kp { font-weight: bold } /* Keyword.Pseudo */
|
||||
.highlight .kr { font-weight: bold } /* Keyword.Reserved */
|
||||
.highlight .kt { color: #F15354; font-weight: bold } /* Keyword.Type */
|
||||
.highlight .m { color: #0075A8 } /* Literal.Number */
|
||||
.highlight .s { color: #EADF5A } /* Literal.String */
|
||||
.highlight .na { color: #A5C63B } /* Name.Attribute */
|
||||
.highlight .nb { color: #0086B3 } /* Name.Builtin */
|
||||
.highlight .nc { color: #445588; font-weight: bold } /* Name.Class */
|
||||
.highlight .no { color: #0075A8 } /* Name.Constant */
|
||||
.highlight .ni { color: #800080 } /* Name.Entity */
|
||||
.highlight .ne { color: #C0392B; font-weight: bold } /* Name.Exception */
|
||||
.highlight .nf { color: #78C9CF; font-weight: bold } /* Name.Function */
|
||||
.highlight .nn { color: #555555 } /* Name.Namespace */
|
||||
.highlight .nt { color: #F15354 } /* Name.Tag */
|
||||
.highlight .nv { color: #FFFFFF } /* Name.Variable */
|
||||
.highlight .ow { font-weight: bold } /* Operator.Word */
|
||||
.highlight .w { color: #bbbbbb } /* Text.Whitespace */
|
||||
.highlight .mf { color: #0075A8 } /* Literal.Number.Float */
|
||||
.highlight .mh { color: #0075A8 } /* Literal.Number.Hex */
|
||||
.highlight .mi { color: #0075A8 } /* Literal.Number.Integer */
|
||||
.highlight .mo { color: #0075A8 } /* Literal.Number.Oct */
|
||||
.highlight .sb { color: #EADF5A } /* Literal.String.Backtick */
|
||||
.highlight .sc { color: #EADF5A } /* Literal.String.Char */
|
||||
.highlight .sd { color: #EADF5A } /* Literal.String.Doc */
|
||||
.highlight .s2 { color: #EADF5A } /* Literal.String.Double */
|
||||
.highlight .se { color: #EADF5A } /* Literal.String.Escape */
|
||||
.highlight .sh { color: #EADF5A } /* Literal.String.Heredoc */
|
||||
.highlight .si { color: #EADF5A } /* Literal.String.Interpol */
|
||||
.highlight .sx { color: #EADF5A } /* Literal.String.Other */
|
||||
.highlight .sr { color: #EADF5A } /* Literal.String.Regex */
|
||||
.highlight .s1 { color: #EADF5A } /* Literal.String.Single */
|
||||
.highlight .ss { color: #EADF5A } /* Literal.String.Symbol */
|
||||
.highlight .bp { color: #999999 } /* Name.Builtin.Pseudo */
|
||||
.highlight .vc { color: #FFFFFF } /* Name.Variable.Class */
|
||||
.highlight .vg { color: #FFFFFF } /* Name.Variable.Global */
|
||||
.highlight .vi { color: #FFFFFF } /* Name.Variable.Instance */
|
||||
.highlight .il { color: #0075A8 } /* Literal.Number.Integer.Long */
|
||||
|
||||
.highlight .lineno { color: #ccc; display:inline-block; padding: 0 5px; border-right:1px solid #ccc; }
|
||||
.highlight pre code { display: block; white-space: pre; overflow-x: auto; word-wrap: normal; }
|
BIN
docs/favicon.png
Normal file
After Width: | Height: | Size: 2.0 KiB |
BIN
docs/img/glyphicons-halflings-white.png
Normal file
After Width: | Height: | Size: 8.6 KiB |
BIN
docs/img/glyphicons-halflings.png
Normal file
After Width: | Height: | Size: 12 KiB |
BIN
docs/img/os/Rancher_aws1.png
Normal file
After Width: | Height: | Size: 88 KiB |
BIN
docs/img/os/Rancher_aws2.png
Normal file
After Width: | Height: | Size: 115 KiB |
BIN
docs/img/os/Rancher_aws3.png
Normal file
After Width: | Height: | Size: 49 KiB |
BIN
docs/img/os/Rancher_aws4.png
Normal file
After Width: | Height: | Size: 131 KiB |
BIN
docs/img/os/Rancher_aws5.png
Normal file
After Width: | Height: | Size: 46 KiB |
BIN
docs/img/os/Rancher_aws6.png
Normal file
After Width: | Height: | Size: 18 KiB |
BIN
docs/img/os/Rancher_aws7.png
Normal file
After Width: | Height: | Size: 69 KiB |
BIN
docs/img/os/Rancher_aws8.png
Normal file
After Width: | Height: | Size: 165 KiB |
BIN
docs/img/os/Rancher_aws9.png
Normal file
After Width: | Height: | Size: 51 KiB |
BIN
docs/img/os/Rancher_busydash.png
Normal file
After Width: | Height: | Size: 224 KiB |
BIN
docs/img/os/Rancher_disk1.png
Normal file
After Width: | Height: | Size: 183 KiB |