Learn DevOps by doing,
not just reading.
746+ articles, guides, and hands-on learning tools for engineers who prefer a terminal over a slide deck.
Join 5,000+ DevOps engineers learning every week
// featured
Interactive Simulators
DNS Resolution Simulator
Walk through the full DNS resolution process step by step
Kubernetes Scheduler
Place pods on nodes based on resource requests and constraints
Load Balancer Simulator
Compare round-robin, least connections, and weighted algorithms
CI/CD Pipeline Builder
Design a deployment pipeline with stages, gates, and rollbacks
Caching Simulator
See how cache hit rates change with different strategies
DDoS Defense
Protect your infrastructure from simulated attack patterns
// categories
Popular Categories
Explore our content by topic
DevOps
DevOps practices and tools
Docker
Docker articles, tutorials, and guides on DevOps Daily covering containers, images, Dockerfiles, Compose, volumes, networking, and production best practices.
Kubernetes
Container orchestration and management
Git
Git and version control for developers
Terraform
Infrastructure as code
Linux
Linux operating system and distributions
Networking
Networking concepts and practices
Bash
Bash scripting and command line
// exercises
Hands-On Exercises
Practice real-world DevOps scenarios with step-by-step guidance
Git Workflow and Collaboration Fundamentals
Master essential Git workflows, branching strategies, and collaboration techniques used in modern development teams.
Redis Caching Strategies for Scalable Applications
Implement production-ready caching patterns with Redis to dramatically improve application performance and scalability.
Linux Performance Tuning and Troubleshooting
Master essential Linux performance analysis and optimization techniques to diagnose and resolve system bottlenecks.
Nginx Load Balancing and Reverse Proxy
Master load balancing and reverse proxy patterns with Nginx to build resilient, scalable infrastructure.
Complete Web Server Automation with Ansible
Build a comprehensive Ansible playbook to automate web server deployment, configuration, and security hardening across multiple environments.
Deploy a DigitalOcean Droplet with Terraform
Learn Infrastructure as Code basics by deploying a simple web server on DigitalOcean using Terraform. Perfect for beginners starting their IaC journey.
// quizzes
Test Your Knowledge
Short interactive quizzes across Docker, Kubernetes, Terraform, networking, and more
Ansible Configuration Management Quiz
Configuration Management
Test your Ansible skills with playbooks, roles, inventory management, and automation scenarios for infrastructure configuration
GitOps with Argo CD: Multi-Environment Repository Structure Quiz
GitOps
Test your knowledge of structuring Git repositories for Argo CD deployments across dev, staging, and production environments. Covers repo layout patterns, ApplicationSets, Kustomize overlays, Helm value files, and sync policies.
AWS Cloud Services Quiz
AWS
Master cloud architecture through real-world AWS scenarios covering compute, storage, networking, and best practices
Back-of-the-Envelope Estimation Quiz
System Design
The napkin-math skill that makes or breaks a system design interview: turning users into QPS, data into storage, traffic into bandwidth, and knowing the latency numbers every engineer should have memorised.
CI/CD Fundamentals Quiz
CI/CD
Master the basics of Continuous Integration and Continuous Deployment, including pipelines, version control, automated testing, and deployment strategies
CI/CD Pipelines Quiz
CI/CD
Test your CI/CD pipeline knowledge with scenarios covering build stages, artifact promotion, environment strategy, deployment patterns, and rollbacks.
// posts
Latest Posts
Stay up to date with the latest DevOps content
OpenSSH 10.6 Refuses DOMAIN\user and Weakens ssh -C. We Measured Both
OpenSSH 10.6 came out on October 6. It refuses usernames with a backslash or a dollar sign before it connects, which breaks ssh, scp, rsync, git and Ansible logins written as CORP\alice. It also cuts ssh -C to Huffman coding only, so a 32 MiB log now compresses to 21 MiB instead of 3.7 MiB. We built 10.5 and 10.6 side by side and tested 13 ways of passing a username, 4 kinds of data and 8 SSH clients.
Python 3.15 Made UTF-8 the Default. We Ran 13 Cases in Seven Linux Locales to See What Changes
Python 3.15 turns on UTF-8 mode everywhere. With container locale settings, none of our 13 encoding cases changed. On a UTF-8 server, only stdin and stdout changed. On a legacy-locale host, almost everything did, and the PYTHONUTF8=0 opt-out dropped LC_ALL=C processes to ASCII.
Docker Desktop Switched New Containers to the local Log Driver. We Measured What That Changes
Docker Desktop 4.94 made local the default log driver for new Linux containers, while Docker Engine on your servers still uses json-file with no rotation. We wrote the same 500,000 lines through both. local kept every line in 24 MB where json-file used 84 MB. A file-tailing collector read none of them.
Queue or Log? Kafka, RabbitMQ and NATS All Do Both Now
Kafka has queues, RabbitMQ has streams, and NATS JetStream does both, so the broker is no longer the choice. We ran replay, a poison message, extra consumers and a retry through six setups. Two settings decided every result. We also found that RabbitMQ 4.3 quietly stops dead-lettering poison messages for consumers that nack.
OpenTofu 1.13 Re-Encodes base64gzip and Drops WinRM. We Upgraded the Same State to See What Breaks
OpenTofu 1.13 shipped on September 30. We applied configs with 1.12.7 and planned them with 1.13.1 against the same state. Gzipped user data planned an update and a replacement with no config change. A WinRM provisioner passed validate and plan, then failed at apply. The new assume functions turned an Invalid count argument error into a clean plan. Here is what to check before you bump the version.
How Shopify Survives Black Friday: The Flash-Sale Playbook
Shopify load tests at 150% of last year's peak, queues buyers at the edge and reserves stock during payment. We rebuilt checkout with k6 and measured it.
// guides
Latest Guides
Step-by-step tutorials to boost your DevOps skills

Security Gates
Implement automated security gates that block deployments on critical vulnerabilities, policy violations, and security failures. Shift security left in your CI/CD pipeline.

Introduction to Packer
Learn how to build automated machine images with HashiCorp Packer, from basic concepts to multi-platform image creation

Introduction to AWS
Learn AWS step by step by building a real cloud application. Covers IAM, EC2, S3, VPC, RDS, load balancing, Lambda, CloudWatch, and cost control.
// tools
DevOps Tools and Calculators
Free, browser-only utilities. CIDR, JWT, base64, UUID, cron, K8s sizing, YAML. No sign-up, no server.
CIDR Calculator
CIDR subnet calculator: parse a CIDR block to get network range, subnet mask, broadcast address, usable IPs, and check whether an IP belongs to the network.
JWT Decoder
JWT decoder that parses the header, payload, and signature in your browser. Shows human-readable expiry and issued-at, with no token sent to any server.
Base64 / URL
Encode or decode base64 and URL-safe strings. Handy for secrets, Kubernetes manifests, and API debugging.
UUID / Secret
Generate UUIDs (v4, v7), random hex tokens, and base64 secrets suitable for Kubernetes secrets or API keys.
Cron Parser
Cron expression parser that translates schedules into plain English and previews the next 5 run times in your local timezone. Validates 5 and 6-field syntax.
K8s Resources
Size CPU and memory requests / limits for a Pod based on workload characteristics, replicas, and headroom.
// 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
- 61
- interactive
- Subscribers
- 5,000+
- engineers
- Cadence
- Weekly
- no spam
5,000+ engineers subscribed