Awesome
<div align="center"> <h1>AutoK3s</h1> <p> <a href="https://drone-pandaria.cnrancher.com/cnrancher/pandaria"><img alt="Build Status" src="http://drone-pandaria.cnrancher.com/api/badges/cnrancher/autok3s/status.svg"></a> <a href="https://goreportcard.com/report/github.com/cnrancher/autok3s"><img alt="Go Report Card" src="https://goreportcard.com/badge/github.com/cnrancher/autok3s"></a> <a href="https://github.com/cnrancher/autok3s/releases"><img alt="GitHub release (latest by date)" src="https://img.shields.io/github/v/release/cnrancher/autok3s?color=default&label=release&logo=github"></a> <a href="https://github.com/cnrancher/autok3s/releases"><img alt="GitHub release (latest by date including pre-releases)" src="https://img.shields.io/github/v/release/cnrancher/autok3s?include_prereleases&label=pre-release&logo=github"></a> </p> </div> <hr />What is AutoK3s
English / 简体中文
K3s is a Lightweight Kubernetes which is great for Edge, IoT, CI, Development, ARM and so on.
AutoK3s is a lightweight tool for simplifying the cluster management of K3s, it can help you Run K3s Everywhere.
<!-- toc --> <!-- /toc -->Key Features
- Flexible installation options, like K3s cluster HA and datastore(embedded etcd, RDS, SQLite, etc.).
- Simplify operations by UI dashboard.
- Airgap K3s package management and installation.
- Add-on streamlines the management and deployment of plugins, seamlessly integrating applications into K3s clusters.
Providers
Now supports the following providers, we encourage submitting PR contribution for more providers:
- aws - Bootstrap K3s onto Amazon EC2
- google - Bootstrap K3s onto Google Compute Engine
- alibaba - Bootstrap K3s onto Alibaba ECS
- tencent - Bootstrap K3s onto Tencent CVM
- k3d - Bootstrap K3d onto Local Machine
- native - Bootstrap K3s onto any VM
Quick Start (tl;dr)
Scenario 1 - Run with docker:
# The commands will start autok3s daemon with an interactionable UI.
# Standard Linux (Recommended)
$ docker run -itd --restart=unless-stopped --net=host -v /var/run/docker.sock:/var/run/docker.sock cnrancher/autok3s:v0.9.3
# MacOS
$ docker run -itd --restart=unless-stopped -p 8080:8080 -v /var/run/docker.sock:/var/run/docker.sock -e DOCKER_HOST="" cnrancher/autok3s:v0.9.3
Scenario 2 - Run with docker-compose
# AutoK3s is available at: http://autok3s.vcap.me (vcap.me resolves to 127.0.0.1).
# The cli and container uses the same `AUTOK3S_CONFIG` directory.
docker-compose up -d
Scenario 3 - Run with cli:
# The commands use the shell script on MacOS and Linux, or visit the Releases page to download the executable for Windows.
curl -sS https://rancher-mirror.rancher.cn/autok3s/install.sh | sh
# The commands will start autok3s daemon and popup default browser with an interactionable UI.
autok3s -d serve
Uninstall
For v0.5.0 or newer version
To uninstall autok3s cli, please execute command below:
/usr/local/bin/autok3s-uninstall.sh
Demo Video
In the demo, we install K3s by k3d provider in around 1 minute, and we can manage K3s clusters by kube-explorer dashboard.
Watch the demo:
Use Cases
- Quickly create K3s cluster and add K3s nodes with GUI Tool using AutoK3s (Installation guide in WSL)
Developers' Guide
Use dapper
to manage project compilation, testing and packaging.
- compilation:
make autok3s build
- testing:
make autok3s unit
- packing:
make autok3s package only
Install dapper
please follow the dapper project.
Source Code
AutoK3s is 100% open-source software. The project source code is spread across a number of repos:
- https://github.com/cnrancher/autok3s
- https://github.com/cnrancher/autok3s-ui
- https://github.com/cnrancher/kube-explorer
Contributed by SUSE(Rancher E&I) Team
License
Copyright (c) 2024 SUSE
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.