/sealos

Sealos is a Kubernetes distribution, a Cloud Operating System designed for managing cloud-native applications. Demo: https://cloud.sealos.io

Primary LanguageGoApache License 2.0Apache-2.0

A Cloud Operating System designed for managing Cloud Native applications

Open in Dev Container Build Status FOSSA Status codecov Website OSCS Status


discord

Docs | 简体中文Roadmap

Use Sealos to run a Kubernetes cluster

asciicast

Run your app on Sealos

Try online demo

Run nginx on Sealos in 30 seconds.

Some Screen Shots of Sealos Desktop:

Sealos Terminal Sealos App Launchpad

Core features

  • Run any application on Sealos.
    • Run nginx on sealos in 30s.
    • Run you own project on sealos, like some java/go/python/node.js webserver.
    • Run you website static files on sealos.
    • Run database and some stateful applications on sealos.
  • ☸️ Manage clusters lifecycle
    • Quickly install HA Kubernetes clusters.
    • Add / remove nodes, Clean the cluster.
  • 💻 Download and deploy OCI-compatible distributed applications.
    • OpenEBS, MinIO, Ingress, PostgreSQL, MySQL, Redis, etc.
  • 🛠️ Customize your own distributed applications.
    • Utilizing Dockerfile to build images of distributed applications while preserving all of their dependencies.
    • Push images of distributed applications to Docker Hub.
    • Integrate various applications to construct a personalized Cloud platform.

Quickstart

Installing a highly available Kubernetes cluster with Calico as the container network interface (CNI).

Here, the Cluster images kubernetes:v1.24.0-4.2.0 and calico:v3.24.1 stored in the registry are fully compliant with the OCI standard. However, if you prefer to use flannel, it is also an option.

# Download and install Sealos, which is a binary tool written in Golang. Simply download it and copy it to the bin directory. You can also download it from the release page.
$ wget  https://github.com/labring/sealos/releases/download/v4.2.0/sealos_4.2.0_linux_amd64.tar.gz  && \
    tar -zxvf sealos_4.2.0_linux_amd64.tar.gz sealos &&  chmod +x sealos && mv sealos /usr/bin 
# Create a cluster
$ sealos run labring/kubernetes:v1.25.0-4.2.0 labring/helm:v3.8.2 labring/calico:v3.24.1 \
     --masters 192.168.64.2,192.168.64.22,192.168.64.20 \
     --nodes 192.168.64.21,192.168.64.19 -p [your-ssh-passwd]

Single host

$ sealos run labring/kubernetes:v1.25.0-4.2.0 labring/helm:v3.8.2 labring/calico:v3.24.1

Building a custom Cluster image

Reference Building an Example CloudImage.

Storage, Message queue, Database, etc.

Don't be shocked by the following:

sealos run labring/helm:v3.8.2 # install helm
sealos run labring/openebs:v1.9.0 # install openebs
sealos run labring/minio-operator:v4.4.16 labring/ingress-nginx:4.1.0 \
   labring/mysql-operator:8.0.23-14.1 labring/redis-operator:3.1.4 # oneliner

And now everything is ready.

Use Kubernetes Cluster image with cri-docker runtime

sealos run labring/kubernetes-docker:v1.20.8-4.2.0 labring/calico:v3.22.1 \
     --masters 192.168.64.2,192.168.64.22,192.168.64.20 \
     --nodes 192.168.64.21,192.168.64.19 -p [your-ssh-passwd]

Community & support

  • Visit the Sealos website for full documentation and useful links.
  • Join our Discord server is to chat with Sealos developers and other Sealos users. This is a good place to learn about Sealos and Kubernetes, ask questions, and share your experiences.
  • Tweet at @sealosio on Twitter.
  • Create GitHub Issues for bug reports and feature requests.

Roadmap

Sealos maintains a public roadmap. It gives a a high-level view of the main priorities for the project, the maturity of different features and projects, and how to influence the project direction.

Contributing & Development

Have a look through existing Issues and Pull Requests that you could help with. If you'd like to request a feature or report a bug, please create a GitHub Issue using one of the templates provided.

See contribution guide →

See development guide →

Links