{"repo":"basnijholt/compose-farm","free":true,"listed":false,"github":"https://github.com/basnijholt/compose-farm","clone":"git clone https://github.com/basnijholt/compose-farm.git","description":"Compose Farm - run docker compose commands across multiple hosts","language":"Python","stars":305,"topics":["cli","compose","deployment","docker","homelab","multi-host","nas","orchestration","python","self-hosted"],"license":"MIT","category":"deployment-docker-iac","readme_excerpt":"Compose Farm A minimal CLI tool to run Docker Compose commands across multiple hosts via SSH. [!NOTE] Agentless multi-host Docker Compose. CLI-first with a web UI. Your files stay as plain folders—version-controllable, no lock-in. Run cf apply and reality matches your config. Why Compose Farm? - Your files, your control — Plain folders + YAML, not locked in Portainer. Version control everything. - Agentless — Just SSH, no agents to deploy (unlike Dockge). - Zero changes required — Existing compose files work as-is. - Grows with you — Start single-host, scale to multi-host seamlessly. - Declarative — Change config, run cf apply , reality matches. Quick Demo CLI: Web UI: Table of Contents - Why Compose Farm? - How It Works - Requirements - Limitations & Best Practices - What breaks when you move a stack - Best practices - What Compose Farm doesn't do - Installation - SSH Authentication - SSH Agent - Dedicated SSH Key (default for Docker) - Configuration - Single-host example - Multi-host example - Multi-Host Stacks - Config Command - Usage - Docker Compose Commands - Compose Farm Commands - Aliases - CLI --help Output - Auto-Migration - Traefik Multihost Ingress (File Provider) - Host Resource Monitoring (Glances) - Comparison with Alternatives - License Why Compose Farm? I used to run 100+ Docker Compose stacks on a single machine that kept running out of memory. I needed a way to distribute stacks across multiple machines without the complexity of: - Kubernetes : Overkill for","default_branch":null,"files":null,"tree":[],"storefront":"/r/basnijholt","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/basnijholt/compose-farm/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}