I built a self-hosted Docker platform in Go
Source: Dev.to

Overview
usulnet is a self‑hosted platform for managing Docker infrastructure. It ships as a single Go binary that handles containers, images, volumes, networks, stacks, security scanning, backups, monitoring, reverse proxy, SSH/RDP/database connections, and multi‑node deployments—all from one web UI.
Key Highlights
- Single binary (~50 MB), no Node.js or Python dependencies
- Trivy security scanning with CVE detection and scoring
- Multi‑node master/agent architecture with NATS + mTLS
- Built‑in terminal (xterm.js), code editor (Monaco), Neovim in the browser
- 11 notification channels (Slack, Discord, Telegram, PagerDuty, etc.)
- RBAC with 44+ permissions, 2FA, LDAP/OIDC
- Backup & restore to S3/local with cron scheduling
- Reverse proxy management (Caddy + Nginx Proxy Manager)
- Full REST API with OpenAPI 3.0 documentation
Tech Stack
- Language & Frameworks: Go, Chi, Templ
- Frontend: Tailwind CSS, Alpine.js, HTMX, Monaco, xterm.js, Neovim (WebAssembly)
- Databases & Messaging: PostgreSQL, Redis, NATS
- Other: Trivy, Caddy, Nginx Proxy Manager
Quick Deploy (≈ 60 seconds)
curl -fsSL https://raw.githubusercontent.com/fr4nsys/usulnet/main/deploy/install.sh | bash
Repository & License
- GitHub:
- License: AGPL‑3.0
This is the first public beta (v26.2.0). It is functional and used in production, but there may be rough edges. Bug reports and feedback are welcome—please open an issue on GitHub.
Screenshots


