DockFleet: Lightweight Container Orchestration for Solo Developers
The Problem
You're running 5 side projects on a single VPS. One crashes at 2 AM. You SSH in, restart it manually, and lose sleep.
Docker Compose is too manual—no health monitoring, no auto-restart, no visibility. Kubernetes is overkill—complex setup, heavy resource consumption, designed for multi-server clusters. You need something in between.
The Solution
DockFleet gives you Kubernetes-like orchestration (health checks, auto-restart, unified logs, clean UI) on a single machine—no vendor lock-in, no complexity, no external APIs. Built for solo devs who ship fast.
What is DockFleet?
A local-first, FOSS container orchestration tool that manages multiple Docker containers on one VPS or local machine. Define your services in one YAML file, run one command, and DockFleet handles the rest: monitoring health, auto-restarting failures, aggregating logs, and providing a real-time web dashboard—all without leaving your machine.
Core Features (MVP)
Config-based service definition (YAML)
One-command deployment
dockfleet up)Automated health monitoring with configurable checks
Auto-restart on container failure
Real-time web dashboard (status + logs)
Cross-platform support (Linux, WSL, macOS)
Zero external API dependencies—fully self-hosted
How It Works
1. Config: Parse dockfleet.yaml → validate services, health endpoints
2. Orchestration: Python subprocess wrapper around Docker CLI
(no Docker SDK dependency for portability)
3. Health Loop: Background thread polls each container's health
endpoint every 30s, writes to SQLite
4. UI: FastAPI serves static HTML + SSE endpoint for real-time logs
5. State: SQLite stores container status, restart history, and log index
Tech Stack
Backend
- Python 3.10+ - Core orchestration logic
- FastAPI - REST API + SSE for real-time updates
- SQLite - State persistence & log indexing
- subprocess - Docker CLI wrapper (no SDK dependency)
Frontend
- Alpine.js - Lightweight reactivity for dashboard
- Tailwind CSS - Utility-first styling
- Server-Sent Events (SSE) - Real-time log streaming
CLI
- Typer - Modern CLI framework with type hints
Infrastructure
- Linux/WSL2/macOS - Cross-platform support
- Single-node deployment - No external dependencies
Who is it for?
Solo developers running multiple side projects on one server
Small teams deploying internal tools without DevOps overhead
Anyone learning container orchestration fundamentals
Developers who want control without complexity