I ran a self-healing Docker agent for 16 days. It recovered every injected failure.

I’ve been testing OSbadgr-agent an infra runtimeon a DigitalOcean box for 16 days.

The idea is not “let AI randomly fix my server", its more boring.

detect known bad state > run approved fix > verify recovery > log what happened.

Setup:

  • sandbox-chaos kills an nginx demo container every 5 hours
  • sandbox-demo-api has restart no, so Docker won’t bring it back
  • badgr-agent-sandbox detects the stopped container, restarts it, and verifies recovery

Results:

  • 391 hours runtime
  • 78 intentional crashes injected
  • 80 automatic repairs
  • 0 failed repairs
  • ~30s average recovery
  • Fastest: 1s
  • Slowest: 61s

Recent repairs were all successful:

Jul 5 13:06 UTC — restart + verified
Jul 5 18:06 UTC — restart + verified
Jul 5 23:06 UTC — restart + verified
Jul 6 04:06 UTC — restart + verified
Jul 6 09:06 UTC — restart + verified
Jul 6 14:06 UTC — restart + verified
Jul 6 19:05 UTC — restart + verified

This is a narrow Docker PoC, not Kubernetes magic or a replacement for proper orchestration.

The safety model is the main part

  • detect-only by default
  • only allowlisted actions run
  • no arbitrary shell commands
  • recovery is verified
  • events are logged
  • failed retries stop instead of looping forever

There were also 454 disk_logs_high events skipped because that repair wasn’t allowlisted. So the real repair result I’m counting is container recovery: 80/80 successful.

What else should I test next?

How do you handle this today in your setups?

Posted Jul 6, 2026, 8:54 PM UTC

05
Loading comments…