Skip to content

Rancher Desktop


1. Welcome to Rancher Desktop

Info

  • A modern, Kubernetes-native replacement for Docker Desktop
  • Rancher Desktop provides:
    • Container runtime (via containerd)
    • Kubernetes cluster (via k3s)
    • Open source and license-free
    • Local cloud-in-a-box: Build, run, push, and deploy
  • Rancher Desktop is part of SUSE' Rancher: Enterprise Kubernetes Management Ecosystem.

Tip

  • The goal of this lecture is to get you to become familiar with Rancher Desktop and its container operations.
  • This lecture uses hands-on activities that are similar to CSC468.
Rancher vs Docker Desktop
Feature Docker Desktop Rancher Desktop
Docker CLI Built-in Nerdctl (alias to Docker commands)
Kubernetes Optional, single-node Built-in K3s, enabled by default
Licensing Commercial for business Free, open-source
Registry login Native nerdctl login required
Resource control GUI GUI with YAML config

Tip

Rancher Desktop is designed with Kubernetes in mind from day one


2. Setting Up Rancher Desktop

  • Ideally, you should uninstall Docker Desktop before starting to install Rancher Desktop.
    • Rancher Desktop can do the same tasks as Docker Desktop (with less GUI tools).
    • Rancher Desktop provides more support for Kubernetes (focus of this class).
  • Install from rancherdesktop.io
  • On first launch, Rancher Desktop will bring up the Settings tab:

    On Virtual Machine, select the appropriate Memory and CPUs amount

    On Container Engine, select containerd

    On Kubernetes, check Enable Kubernetes

  • Confirm setup in terminal:

docker version
kubectl version


3. Container runtimes

What is a container runtime?

  • A runtime is the low-level component responsible for managing container lifecycle: create, start, stop, and delete containers.
  • It sits below tools like Docker CLI or Kubernetes.

Common runtimes

Runtime Used By Notes
dockerd Docker CLI The original Docker daemon. Handles image builds, networks, volumes, and calls containerd internally for actual container execution.
containerd Docker (since v1.11+), Kubernetes A lightweight runtime daemon. Docker delegates runtime operations to containerd. Kubernetes uses it directly via the CRI.
cri-o OpenShift, Kubernetes A runtime that interfaces directly with Kubernetes, focusing only on running containers (no builds or volumes).
runc containerd, cri-o The actual binary that creates containers from OCI bundles. Very low-level.

How Docker uses dockerd and containerd

  • When you run docker run:
    • The Docker CLI talks to the dockerd daemon
    • dockerd builds images, manages networking, and oversees the container lifecycle
    • For actual execution, dockerd delegates container lifecycle tasks to containerd
    • containerd then uses runc to spawn the container
  • In modern Docker, containerd is embedded and managed by dockerd. You rarely see it unless you use advanced tooling.

What about Nix* systems?

  • NixOS / nixpkgs: use a purely functional package and system configuration model
  • While container runtimes like docker and containerd are supported in Nix-based systems, users often prefer reproducible builds via nix build, nix-shell, or nix develop
  • Containers on Nix:
    • You can build container images with nix and export them to Docker/OCI
    • Popular for CI/CD pipelines or reproducible scientific workflows
    • Nix is not a container runtime, but complements them by ensuring immutable container definitions

Tip

  • Docker = monolith with features + embedded containerd.
  • Kubernetes = speaks directly to containerd or cri-o.

4. Kubernetes Readiness Check

kubectl get nodes
kubectl get pods -A

You’re ready for Week 2: Kubernetes deployments

5. Docker Practice

  • Complete section 2 and 3 of the Docker lecture in CSC 468 to quickly review and also to confirm that Docker of Rancher Desktop works properly.

6. What’s Next

  • Week 2: Kubernetes core objects

  • Pods, Services, Deployments

  • Apply with kubectl
  • Rancher Desktop gives you local Kubernetes + container runtime all in one

Tip

Familiar tasks from Docker Desktop now live in Rancher, ready for Kubernetes.