![]() |
4 years ago | |
---|---|---|
cmd | 4 years ago | |
config | 4 years ago | |
dist | 4 years ago | |
drain | 6 years ago | |
frontend | 4 years ago | |
gnutar | 5 years ago | |
host | 4 years ago | |
image | 4 years ago | |
ldd | 4 years ago | |
mount | ||
namegenerator | 4 years ago | |
net | 4 years ago | |
pod | 4 years ago | |
samples | 6 years ago | |
supportfiles | 4 years ago | |
uname | 6 years ago | |
volume | 4 years ago | |
zfs | 4 years ago | |
zpool | 6 years ago | |
.gitignore | 4 years ago | |
Jenkinsfile | 4 years ago | |
README.md | 4 years ago | |
Taskfile.yml | 4 years ago | |
Vagrantfile | 4 years ago | |
go.mod | 4 years ago | |
go.sum | 4 years ago | |
model.go | ||
tools.go | 4 years ago |
README.md
Aurora OpenCloud
A Container Engine for illumos implementing the broadly used standards in the cloud field and making them work with the Quality and integration the illumos is used to.
Scope
The following standards are in scope of this Project:
- Open Container Interface (docker images and containers)
- CNCF Kubernetes and Projects supporting running on it.
- Cloud Foundry for app deployment definitions and source to image
- Cloud Native Bundle Spec
Components
To make these standards usable the following Components are part of this Project:
- CLI
- cloudadm create and manage clusters on hardware or any supported cloud provider
- podadm run and manage containers and pods on single nodes or clusters
- imageadm build and publish images in the OCI format from configuration instructions or Dockerfiles
- Kubernetes
- podadmd a kubelet implementation allowing kubernetes workloads to run within zones
- Higher level concepts
- Buildpacks Source to image standards
- Routes and Domains
Status
Currently the OCI standards are implemented
Installation
From source
Install Go 1.13 or higher. Make sure you have a working Go environment. See the install instructions. For OpenIndiana you can do the following
WORKSPACE="$HOME/workspace"
pkg install -v golang-113 system/header developer/build/gnu-make git developer/gcc-8 system/library/gcc-8-runtime jq
export GOPATH="$WORKSPACE/go"
Install the task utility to build the code.
TASK_VERSION="v2.8.0"
cd $GOPATH
git clone https://github.com/go-task/task task
pushd task/cmd/task
git checkout $TASK_VERSION
go install -v
popd
Finally build and install the code. This will install the binaries under /usr/local and the custom zone brand into the correct directory.
task install
Configuration
Create a configuration file for the CLI utilities
cat <<EOF > /etc/opencloud.yaml
root:
zfs:
path: "rpool/podhost"
mountpoint: "/podhost"
docker:
hubUrl: "https://registry-1.docker.io"
EOF
Usage
Before you can use the CLi you need to initialize the Host once. That will create all the required ZFS datasets and write default state files.
podadm host-init
Now you can run an existing container via podadm run
podadm run docker://openindiana/hipster
or import your existing zones as images
imageadm import -z ZONENAME
Development
Want to join the project or have a question? Join us in IRC (irc://freenode.net/#aurora-opencloud).