No more SSH-ing in to deploy
When your CI publishes a new version, reconD deploys it to your server, checks it's healthy, and puts the old version back if it isn't. Neither you nor your CI pipeline needs SSH access to the server.
reconD watches for new releases from your CI, deploys them to your Docker host, and rolls back if something breaks.
reconD sits between registry watchers that update containers automatically and Kubernetes GitOps controllers that need a cluster.
| reconD | Watchtower | Argo CD / Flux | |
|---|---|---|---|
| Runs on | One Linux host with Docker | One host with Docker | Kubernetes clusters |
| What triggers a deploy | A release your CI publishes, with deployment-metadata.json | A new image pushed to the registry under the running tag | A commit to manifests in a git repository |
| Tracks versions by | Immutable manifest digest | The running image tag | Git commit of the manifests |
| How it deploys | Your own command: docker run, Compose, a script, or Make | Recreates the container with its existing options | Applies Kubernetes manifests, Helm charts, or Kustomize |
| Health checks before marking success | HTTP or TCP | No | Kubernetes resource health |
| Automatic rollback | Yes, to the last good release | No | Not by default: revert in git, or use Argo CD's history rollback; automatic with Argo Rollouts, Flagger, or Flux Helm remediation |
| Infrastructure needed | A systemd service | A container with the Docker socket | A cluster and an in-cluster controller |
Watchtower keeps containers on the newest image for their tag: when the registry has a newer my-app:latest, it pulls it and recreates the container. That is convenient, but every push to the registry goes live, and a broken image stays running.
reconD deploys only what your CI explicitly released. It pins releases by digest, deploys them with your own command, waits for a health check, and rolls back to the previous release if the new one fails. Choose Watchtower to keep third-party images such as databases or dashboards up to date with no setup. Choose reconD for your own applications, where each deployment should be deliberate, traceable to a commit, and safe to fail.
The upstream Watchtower project (containrrr/watchtower) was archived in December 2025; community forks continue it.
Argo CD and Flux reconcile Kubernetes clusters from manifests in git, and they are the right choice if you already run Kubernetes. reconD brings the same reconciliation loop, desired state versus observed state, to a single server running plain Docker. You get automated, auditable deployments without operating a cluster, an ingress controller, or in-cluster controllers.