whatisgithub

What is microk8s?

canonical/microk8s — explained in plain English

Analysis updated 2026-06-24

9,283PythonAudience · ops devopsComplexity · 3/5Setup · easy

In one sentence

A lightweight Kubernetes distribution from Canonical that installs with a single Snap command on laptops, edge devices, and servers, with optional add-ons for monitoring, networking, and GPU workloads.

Mindmap

mindmap
  root((repo))
    What it does
      Lightweight Kubernetes
      Single command install
      Certified conformant
    Add-ons
      Dashboard monitoring
      Prometheus Grafana
      GPU support
      Istio Linkerd
    Platforms
      Laptop workstation
      IoT edge device
      Ubuntu Snap-based
    Operations
      Enable disable addons
      Pin K8s version
      Built-in kubectl
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Run a full Kubernetes cluster on your laptop for local development without cloud costs.

USE CASE 2

Deploy Kubernetes on a Raspberry Pi or IoT edge device with a single install command.

USE CASE 3

Test Kubernetes add-ons like Prometheus, Istio, or Linkerd locally before deploying to a cloud cluster.

USE CASE 4

Set up a GPU-enabled Kubernetes node for running machine learning workloads locally.

What is it built with?

PythonKubernetesSnap

How does it compare?

canonical/microk8syzhao062/anomaly-detection-resourceszhm-real/pathplanning
Stars9,2839,2829,280
LanguagePythonPythonPython
Setup difficultyeasyeasyeasy
Complexity3/51/52/5
Audienceops devopsresearcherresearcher

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 30min

Requires Ubuntu or a Snap-compatible Linux distro, macOS and Windows require running MicroK8s inside a virtual machine.

So what is it?

MicroK8s is a lightweight version of Kubernetes, the system that large companies use to run and manage software applications across many servers. Kubernetes is normally complex to install and operate, but MicroK8s packages everything into a single installable unit that runs on a laptop, a developer workstation, a small IoT device, or an edge server. It is made by Canonical, the company behind the Ubuntu Linux distribution. Installation is a single command using the Snap package manager, which is the standard way to install software on Ubuntu and many other Linux distributions. Once installed, MicroK8s provides a built-in version of kubectl, which is the command-line tool used to interact with Kubernetes. It also creates a user group so that you can run commands without needing administrator privileges each time. Out of the box, MicroK8s is a minimal Kubernetes cluster. Optional components can be turned on one at a time using the enable command. The available add-ons include a web dashboard for viewing what is running, DNS for internal name resolution, monitoring tools (Prometheus and Grafana), networking tools (Istio and Linkerd), and GPU support for machine learning workloads. A full list of available and currently enabled add-ons is visible with the status command. The project tracks Kubernetes releases closely, publishing beta, release candidate, and final builds on the same day as the upstream Kubernetes project. You can stay on the latest version or pin to any specific version from 1.10 onward. It is certified as a conformant Kubernetes implementation, meaning applications built for major cloud-managed Kubernetes services like Amazon EKS or Google GKE should also work on MicroK8s. It is free and open source, with official documentation maintained separately at microk8s.io.

Copy-paste prompts

Prompt 1
Show me how to install MicroK8s on Ubuntu, enable the DNS and dashboard add-ons, and deploy a simple Nginx web app.
Prompt 2
How do I enable GPU support in MicroK8s to run a PyTorch training job in a Kubernetes pod locally?
Prompt 3
How do I pin MicroK8s to Kubernetes version 1.28 and later upgrade it to 1.29?
Prompt 4
Set up MicroK8s with Prometheus and Grafana monitoring and access the Grafana dashboard from my browser.
Prompt 5
How do I configure MicroK8s so I can run kubectl commands without sudo?

Frequently asked questions

What is microk8s?

A lightweight Kubernetes distribution from Canonical that installs with a single Snap command on laptops, edge devices, and servers, with optional add-ons for monitoring, networking, and GPU workloads.

What language is microk8s written in?

Mainly Python. The stack also includes Python, Kubernetes, Snap.

How hard is microk8s to set up?

Setup difficulty is rated easy, with roughly 30min to a first successful run.

Who is microk8s for?

Mainly ops devops.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.