Skip to main content
NewGitLab.com's 60-Requests-an-Hour Limit Is Live, and the Headers Won't Warn You

Learn DevOps by doing,
not just reading.

764+ 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

CI/CD

GitLab.com's 60-Requests-an-Hour Limit Is Live, and the Headers Won't Warn You

We sent anonymous requests to GitLab.com until the new per-IP limit blocked us. It depended on which project we asked for, the successful responses never mentioned it, and Retry-After was wrong in both directions. Here is what we measured and how to find the anonymous calls in your CI before GitLab does.

|15 min read
CI/CD

15 Minutes to 5: What Happens When You Move iOS CI From M1 to M4

The Wikipedia iOS app's build and 503 unit tests took a median 15.4 minutes on GitHub's M1 runner and 5.6 minutes on an M4. We split the time by phase, priced each run, and checked whether a bigger Mac is worth it.

|8 min read
DevOps

Moving Authorization Out of Your App Code: If-Statements vs Cerbos vs SpiceDB, Measured

We built one permission model as if-statements, as Cerbos policies and as a SpiceDB relationship graph, grew it through roles, teams, sharing and a late contractor rule, and checked 84 hand-written decisions at every step. Here is what each design cost in latency, in list queries and in lines of code.

|18 min read
Python

LiteLLM 1.107.0 Was Built From a Lookalike Fork: What PyPI Provenance Can and Cannot Tell You

The poisoned LiteLLM release came out of the real release pipeline, fed from a fork one hyphen away. We measured what a PyPI attestation would have shown, what the Docker image provenance showed, and how many of the 1,000 most downloaded PyPI projects publish attestations at all: 39%.

|18 min read
CI/CD

Why Your GitHub Actions Bill Keeps Growing, and What Each Fix Saves

Per-job rounding, macOS minutes at ten times the Linux price, re-runs and storage add up quietly. We measured where one repository's minutes went in 30 days, then ran a mobile pull request pipeline 34 times on GitHub-hosted runners and on Bitrise Build Hub to see what faster machines change in time and money.

|20 min read
Linux

Node.js October 2026 Security Release: Finding Every Node You Actually Run

Node.js 22.23.4, 24.22.1 and 26.12.1 fix a Brotli decoder bug that the project says permits remote code execution, plus TLS and DNS bugs. The version bump is one line. pm2 entries, the pm2 daemon, systemd units, cron jobs and containers each keep their own Node, so here is how to find every one and prove it moved.

|17 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
61
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