Minikube Tutorial on Fedora
Install and use minikube on Fedora 44 with kubectl and helm.
What you'll learn
How to install minikube on Fedora 44, run a local Kubernetes
cluster with the docker driver and containerd runtime, and deploy applications with
both kubectl and helm. Later sections
cover Istio service mesh and (optionally) KEDA HTTP-driven
autoscaling β reference material for using those tools against
a local cluster. All container images are UBI-based and do not
require Red Hat subscription registration.
Tutorial outline
What this tutorial covers, in what order, and how the sections build on each other.
Prerequisites
Hardware, operating system, and tooling you need before starting.
Installation
Install minikube, kubectl, helm, and the supporting toolbox on Fedora 44.
Starting minikube
Start a minikube cluster with the docker driver and containerd, publish NodePorts to loopback, verify it's healthy, manage its lifecycle.
Custom resources, profiles, multi-node
Override CPU/memory per cluster, run multiple clusters side by side with profiles, and run single clusters with multiple nodes.
Addons and the dashboard
Enable optional cluster features via minikube addons; the metrics-server, ingress, and dashboard addons used by later sections.
Deploying with kubectl
Deploy a workload with kubectl β Pods, Deployments, Services, scaling, rolling updates β using a UBI nginx image.
Services and NodePort
Service types compared, NodePort mechanics, and how minikube publishes NodePorts to host loopback so no helper process is needed.
Persistent volumes
PersistentVolumes, PersistentVolumeClaims, and StorageClasses β giving stateful workloads storage that outlives any Pod.
Helm
Helm 4 as a Kubernetes package manager; authoring a small chart that deploys the same UBI nginx via templated manifests and a ConfigMap.
Editor, shell, terminal
Practical tooling for fast feedback when editing manifests, running kubectl, and navigating the cluster.
Istio
Service mesh on minikube β install Istio, sidecar-inject an existing Deployment, deploy Bookinfo, and exercise traffic routing and fault injection.
KEDA
Event-driven autoscaling on Kubernetes. Two patterns β Kafka consumer-lag scaling with Strimzi, and HTTP request scaling with the KEDA HTTP add-on β both with scale-to-zero.
Alternatives to minikube
A brief tour of kind, k3s, and MicroShift. When each is the right choice on a Fedora or RHEL host, and why this tutorial runs minikube on Docker Engine.
FAQ
Common pain points hit while working through this tutorial, with the diagnostic commands and the fixes. Plus a consolidated cleanup-recipes section at the end.
Where to go next
Concrete next steps after this tutorial β production-like upgrades, deeper resources, and follow-on tutorial ideas worth pursuing.
Examples
Index of all runnable examples in the tutorial. Each example has its own dedicated page and a runnable demo.sh script in the repo.
Capstone: a data mesh on minikube
A working data-mesh implementation that exercises everything from Β§1βΒ§12 in one coherent system β services across REST, gRPC, GraphQL, and Kafka, deployed via helm to a dedicated minikube profile, with contracts, a catalog, progressive delivery, autoscaling, and full observability.