Show HN: DCD – Deploy Docker Compose apps to any VPS with one command
I found managed platforms could get pricey/restrictive, and full K8s/complex CI felt like overkill for simple apps. Manual SSHing, git pull, docker-compose up was tedious and error-prone.
DCD aims for Heroku-like simplicity on your own server. If docker-compose up works locally, you deploy with: dcd up user@ssh-ip
It syncs your compose files, relevant local volumes, and .env files to your server via SSH/SFTP, then runs docker compose up -d. It can also (optionally) help install Docker/Compose on the remote server if needed (Debian/Ubuntu focused for now).
Key things: * Single command deploy: dcd up user@your-server.com * Cost-effective: Use any cheap VPS. * GitHub Actions integration: Simple YAML for CI/CD. Example: https://github.com/g1ibby/homellm/blob/main/.github/workflow... * Written in Rust.
Current Limitations (Important!): * No build: support yet: DCD expects pre-built images from a Docker registry. It won't build images on the remote server from a build: context in your compose file. * Platform focus: Best tested on Debian/Ubuntu. Other Linux distros might work but are less tested.
Installation: * Homebrew: brew install g1ibby/dcd/dcd * Cargo: cargo install dcd * Binaries: https://github.com/g1ibby/dcd/releases
I built this to solve my own pain point and hope it might be useful for others running personal projects, self-hosting, or small applications where you want control without heavy orchestration.
Would love to get your feedback and hear how you're currently deploying similar setups!
Edit: Would be neat if this opened up ports with UFW... I still uses it on quite a few servers.