Deploy
Docker
stacks.
No drama.
$ curl -fsSL https://raw.githubusercontent.com/gfargo/strut/main/install.sh | bashWorkflow
Three commands.
That's it.
Initialize, scaffold, deploy. strut handles the rest.
Capabilities
What you get.
Multi-Stack Management
Run multiple Docker Compose stacks on one VPS. Each stack gets its own config, secrets, and lifecycle.
One-Command Releases
Sync repo, run migrations, deploy containers, verify health. One command.
Database Backup & Restore
Backup Postgres, MySQL, SQLite. Restore to any environment. Pull prod data locally for debugging.
Drift Detection
Compare local config to what's running. See exactly what changed and decide how to fix it.
Secret Rotation
Rotate SSH keys, API tokens, DB passwords. Update .env files and GitHub deploy keys in one go.
Health Checks
Configure per-service health checks in services.conf. strut waits for green before marking deploy complete.
Dry-Run Mode
See what any command will do before it runs. Review the plan, then execute.
VPS Audit
Already have Docker containers running? strut audit scans your VPS and helps you convert to managed stacks.
Deploy Anywhere
If it has SSH, strut can ship to it.
Cloud VPS
DigitalOcean, Hetzner, Linode, Vultr — if it runs Linux and has an IP, strut can deploy to it. No vendor lock-in, no proprietary agents.
$ Raspberry Pi
Turn a $35 board into a production-grade Docker host. Home automation, IoT gateways, local AI inference.
$strut home-hub release --env piLocal Development
Mirror your production stack locally. Same configs, same commands. Catch issues before they hit prod.
$strut my-app deploy --env localHomelab Server
Old laptop, NUC, or rack-mount. Run Plex, Nextcloud, Pi-hole — each as an isolated strut stack.
$strut media-server release --env homelabClassroom Labs
Give every student their own stack. Scaffold once, deploy to each machine. Reset between sessions.
$strut scaffold student-envPreview Environments
Spin up a full stack per pull request on a shared staging VPS. Review, test, tear down.
$strut pr-42 release --env stagingEdge Nodes
Deploy containerized services to remote edge devices. Kiosks, sensors, retail POS.
$strut kiosk-app release --env edgeDedicated Servers
Colocated hardware, on-prem racks, or that beefy workstation under your desk.
$strut ml-pipeline release --env metalGame Servers
Minecraft, Valheim, Factorio — containerized and deployed to any box. Backup worlds, monitor health.
$strut minecraft release --env gamingNo proprietary agents · No cloud lock-in · Just SSH + Bash + Docker
Let your AI agent
run the show.
strut includes optional agent steering files and a skills library. Point Claude, Cursor, or any MCP-compatible agent at your project and let it handle deployments, backups, and rollbacks.
? Project name: my-app
? Target VPS: ubuntu@192.168.1.100
? Install agent steering & skills? (recommended)
✓ Agent steering enabled
✓ Skills library installed (12 skills)
→ Agents can now run: deploy, backup, rollback, scale...
Agent Steering
Prompt files that guide AI agents through strut commands. Tell it what to do, it figures out how.
Skills Library
12 pre-built skills: deploy, backup, rollback, scale, logs, and more. Drop them into your agent config.
Context Aware
Agents read your strut.conf, services.conf, and stack state. They know what's deployed and what's not.
Works with any MCP-compatible agent
Claude, Cursor, Windsurf, and more.
Why strut
How it compares.
| Feature | strut | Kubernetes | Kamal | Manual SSH |
|---|---|---|---|---|
| Time to First Deploy | Minutes | Days | Hours | Hours |
| Learning Curve | Low | Steep | Medium | Low |
| Multi-Stack Support | ||||
| Database Backup | ||||
| Drift Detection | ||||
| Secret Rotation | ||||
| Health Checks | ||||
| Dry-Run Mode | ||||
| No YAML Config | ||||
| Works on Any VPS |
Available via add-on or extra configuration
Who it's for
Who uses strut.
Solo Developer
You have a VPS, a Docker Compose file, and zero interest in learning Kubernetes. strut gets your app running with a real deployment workflow.
"I SSH into my server maybe once a month now."
Small Team
Your team needs a consistent way to deploy. strut gives everyone the same commands, same configs, same process. No more 'works on my machine.'
"New devs can deploy on day one."
Agency / Consultancy
You manage infrastructure for multiple clients. strut keeps each project isolated while using the same patterns everywhere.
"Same workflow for every client. Different configs."