Back to all templates
k0s logo

k0s

Infrastructure2048MB+ RAM

Zero-friction Kubernetes distribution

kubernetesk8sorchestration

Deploy k0s in 3 Steps

1

Connect Your VPS

Add your server credentials to Server Compass

2

Select k0s

Choose from our template library

3

Deploy & Configure

Fill in settings and click Deploy

No Docker knowledge required
Step-by-step deployment guide

Deploy k0s on a VPS with Server Compass

Use the k0s template in Server Compass to deploy a lightweight Kubernetes control plane on your VPS, then verify the Kubernetes API endpoint.

About 10 minutesBrowser verified
1
Step 1

Open the server Apps tab

Select the tutorial-vps VPS, open the Apps tab, and start a new app deployment. Keep sensitive server details hidden before capturing or sharing screenshots.

Server Compass Apps tab before creating a k0s app
2
Step 2

Choose an app template

Click New App and choose the template deployment path so Server Compass can load the built-in catalog.

Choosing to deploy an app from a Server Compass template
3
Step 3

Search for k0s

Use the template picker search to find k0s in the Server Compass template catalog.

Searching for k0s in the Server Compass template picker
4
Step 4

Select the k0s template

Choose the k0s template. Server Compass fills the privileged controller service, persistent control-plane data and pod log volumes, runtime tmpfs mounts, and API ports.

k0s template selected in Server Compass
5
Step 5

Review the k0s settings

Confirm the app name and compose service. In this run, the app was named k0s-demo and used host port 6443.

Reviewing k0s project settings and compose service
6
Step 6

Deploy k0s

Review the generated compose settings, confirm the k0s API ports are available, and click Deploy.

Reviewing k0s API ports before deployment
7
Step 7

Watch the deployment progress

Keep the deployment modal open while Server Compass uploads the compose file, pulls the k0s image, starts the controller container, and verifies the stack.

Server Compass deploying the k0s template on the VPS
8
Step 8

Confirm k0s is running

After deployment finishes, return to the Apps tab and confirm the k0s app is marked Running with its application URL available.

k0s template running in the Server Compass Apps tab
9
Step 9

Open the Kubernetes API endpoint in the browser

Open the HTTPS application URL with /version appended. A Kubernetes API response confirms the control plane is reachable.

The deployed k0s Kubernetes API endpoint loaded in a browser

After k0s Opens

  • Do not expose the Kubernetes API publicly without strong authentication and network controls.
  • Use a VPN, IP allowlist, firewall rule, or authenticated reverse proxy for production access.
  • Generate and store kubeconfig securely before managing workloads.
  • Review the privileged container and Docker socket access before using this on shared hosts.
  • Back up the k0s data volume before moving or replacing the VPS.
  • Keep the k0s image updated for Kubernetes and dependency security fixes.

Verified Result

The k0s Kubernetes API endpoint loaded successfully and returned an API response.

k0s deployment questions

What does the k0s template deploy?

It deploys a privileged k0s controller container with persistent control-plane data, pod log storage, runtime tmpfs mounts, and exposed Kubernetes API ports.

Which port did the tutorial use?

The tutorial used host port 6443, which maps to the k0s Kubernetes API on container port 6443. The template also exposes a kube API auxiliary port mapped to container port 9443.

Why does the guide verify /version?

k0s is an API service, not a dashboard. The /version endpoint confirms the Kubernetes API is reachable.

Should this become a blog post?

No. The deployment guide should live on the k0s template detail page and be linked from the reusable template deployment docs page.

Do It Yourself

Deploy k0s via Command Line

Prefer the command line? Follow this step-by-step guide to deploy k0s manually on your VPS.

1

Open a Terminal Connection

Start by opening a terminal window and connecting to your VPS via SSH.

terminal
# Connect to your VPS
ssh root@your-server-ip

# Or with a specific SSH key
ssh -i ~/.ssh/your-key root@your-server-ip

First time? Docker required! Install it with: curl -fsSL https://get.docker.com | sh

2

Create Application Directory

Create a dedicated space for your application deployment.

terminal
# Create and navigate to project directory
mkdir -p ~/apps/k0s
cd ~/apps/k0s
3

Create Deployment Configuration

Create a docker-compose.yml file with the following configuration:

docker-compose.yml
services:
  k0s:
    image: docker.io/k0sproject/k0s:latest
    command: k0s controller --config=/etc/k0s/k0s.yaml
    ports:
      - "6443:6443"
      - "9443:9443"
    volumes:
      - k0s_data:/var/lib/k0s
      - /var/run/docker.sock:/var/run/docker.sock
    privileged: true
    restart: unless-stopped

volumes:
  k0s_data:
Configuration Variables
PORTAPI server port(default: 6443)
KUBE_PORTKube API port(default: 9443)
4

Launch Your Application

Deploy the stack and monitor the startup process.

terminal
# Spin up containers
docker compose up -d

# Verify deployment
docker compose ps

# Check logs for errors
docker compose logs -f
5

Enable External Access

Set up firewall rules to permit incoming connections.

terminal
# Allow the application port through firewall
sudo ufw allow 6443/tcp
sudo ufw reload

# Access your app at:
# http://your-server-ip:6443
Skip the Terminal

Skip the command line. Deploy visually.

Deploy k0s with a beautiful UI instead. No SSH, no YAML editing, no terminal commands. Just click, configure, and deploy in under 3 minutes.

  • Visual config editor
  • Instant deployment
  • Automatic HTTPS
  • Smooth updates
  • Live monitoring
  • Quick rollbacks
Download Server Compass$29 one-time • Lifetime license

After Deployment

After deploying k0s with Server Compass, complete these steps to finish setup

1

Get kubeconfig

2

Configure kubectl

3

Deploy workloads

Need help? Check out our documentation for detailed guides.

k0s FAQ

Common questions about self-hosting k0s

How do I deploy k0s with Server Compass?

Simply download Server Compass, connect to your VPS, and select k0s from the templates list. Fill in the required configuration and click Deploy. The entire process takes under 3 minutes.

What are the system requirements for k0s?

k0s requires a minimum of 2048MB RAM. We recommend a VPS with at least 4096MB RAM for optimal performance. Any modern Linux server with Docker support will work.

Can I migrate my existing k0s data?

Yes! Server Compass provides volume mapping that allows you to import existing data. You can also use standard k0s backup and restore procedures.

How do I update k0s to the latest version?

Server Compass makes updates easy. Simply click the Update button in your deployment dashboard, and the latest k0s image will be pulled and deployed with zero downtime.

Is k0s free to self-host?

k0s is open-source software. You only pay for your VPS hosting (typically $5-20/month) and optionally Server Compass ($29 one-time). No subscription fees or per-seat pricing.

Ready to Self-Host k0s?

Download Server Compass and deploy k0s to your VPS in under 3 minutes. No Docker expertise required.

Download Server Compass