Skip to main content
NewOpsville: A Free Pixel-Art DevOps Town in Your Browser

Learn DevOps by doing,
not just reading.

726+ articles, guides, and hands-on learning tools for engineers who prefer a terminal over a slide deck.

Join 1,500+ DevOps engineers learning every week

kubectl --watch
$
devops-daily --stats

// featured

Interactive Simulators

Browse all simulators

// categories

Popular Categories

Explore our content by topic

// exercises

Hands-On Exercises

Practice real-world DevOps scenarios with step-by-step guidance

View all exercises

// quizzes

Test Your Knowledge

Short interactive quizzes across Docker, Kubernetes, Terraform, networking, and more

// posts

Latest Posts

Stay up to date with the latest DevOps content

DevOps

Opsville: A Free Pixel-Art DevOps Town in Your Browser

Opsville is a free browser game. Walk a pixel-art town, fix eight DevOps districts with our simulators and quizzes, and see how we built it.

|7 min read
Cloud

Build an Everyday AI Assistant with DigitalOcean Inference

Build Daylight, a personal assistant that turns a brain dump into a realistic plan, adapts when your day changes, and saves the changes you accept.

|15 min read
Linux

cgroup v2 memory.high Throttles, memory.max Kills: Measured on a Host Without Swap

We ran one allocating workload under memory.max, memory.high and both on a Linux 6.8 host with no swap. memory.max killed it in under half a second. memory.high did not kill it: new allocations waited, once per 64-page batch at best and once per page next to a busy neighbour on the same CPU. Here are the numbers, the kernel formula behind them, and what systemd, Docker and Kubernetes write.

|24 min read
Security

Alpine OpenSSH Password Bypass (CVE-2026-123158): Check and Fix

Alpine sshd without PAM could let an attacker into accounts that have no password. Check one host or all your containers, then upgrade and restart sshd.

|6 min read
DevOps

OpenTelemetry Collector Custom Builds: 6.5x Smaller, and What Resource Detectors Cost at Startup

We built a small Collector with ocb and started it next to the contrib release on a droplet, in two network namespaces and on a Raspberry Pi, 5 times per case. The custom build is 6.5x smaller and holds under a quarter of the memory. Cloud detectors for clouds the host is not on held startup for the full 5 s timeout, even on another cloud, and one detector stopped the Collector from starting at all.

|16 min read
Kubernetes

An Empty resources: {} Makes Kubernetes 1.34 to 1.36 Pods BestEffort

An empty pod-level block makes a pod with requests and limits BestEffort on Kubernetes 1.34 to 1.36. We measured what changes on the node, and what does not.

|15 min read

// guides

Latest Guides

Step-by-step tutorials to boost your DevOps skills

// tools

DevOps Tools and Calculators

Free, browser-only utilities. CIDR, JWT, base64, UUID, cron, K8s sizing, YAML. No sign-up, no server.

// about

DevOps Daily is a free, independent education platform for engineers who want to learn by running things, not by reading pitch decks. Kubernetes, Docker, Terraform, CI/CD, observability, and security, through hands-on simulators, quizzes, exercises, and a weekly newsletter.

Free
$0
forever
Tools
62
interactive
Subscribers
1,500+
engineers
Cadence
Weekly
no spam

// sponsors

Supported by

DevOps Daily stays free because these companies sponsor it.

  • Bitrise
  • Atomsized
  • DigitalOcean
  • DevDojo
  • SMTPfast
  • QuizAPI
Become a sponsor
devops-daily --subscribe
$ echo "Weekly DevOps digest. No spam. Unsubscribe anytime."
Weekly DevOps digest. No spam. Unsubscribe anytime.
$ subscribe --email
$

1,500+ engineers subscribed