Docker manager for one host or a whole fleet. - Manage local, remote TLS, and NAT'd/VPS hosts from one UI - Deploy & update Compose stacks, incl. from Git with auto-sync - Live logs, metrics, and an in-browser container shell - Scan every image for CVEs (Grype/Trivy) before it ships - Inject secrets from 1Password, Vault, Infisical, Doppler - Encrypted backups to local, S3, or GCS - Semver update badges with release notes - SSO, LDAP, and role-based access Hardened and free.
We have built Dockhand because managing Docker across a homelab or enterprise meant juggling terminal tabs, half-abandoned dashboards, and SSH sessions - and none of them did everything we needed in one place.
So Dockhand is the tool we wanted: one clean UI for every host (local, remote, or NAT'd behind an agent), Compose stacks you can deploy straight from Git, live logs and an in-browser shell, CVE scanning before anything ships, and secrets pulled from 1Password/Vault/Infisical/Proton Pass without ever touching disk. Self-hosted, security-hardened, and free for personal use.
It's actively developed and we'd genuinely love your feedback - what would make it a keeper for your setup? Happy to answer anything in the comments.
Report
what would make it a keeper for me: the CVE scanning before ship. We run a handful of small services and half our "known issues" are CVEs in base images we can't easily rebase without breaking something else. Does Dockhand just flag those every time, or is there a way to accept/allowlist a specific CVE on a specific image so it stops nagging you about something you've already decided is an acceptable risk? That distinction is usually what makes people ignore a scanner entirely after week two.
@jarek_k good to hear, that's the feature that decides whether we keep using it past week two. one thing worth thinking through when you build it: will the allowlist be scoped per-image, or global across the fleet? global is faster to set up but it's also how a genuinely new CVE in a different image quietly gets ignored because it shares a CVE ID with something you already accepted elsewhere.
Report
How does this compare to just running Docker Desktop / Portainer? What's the main gap it fills?
Fair question - Docker Desktop and Portainer both do their job. Docker Desktop is a local dev tool; Portainer is a general orchestration UI. Dockhand is for people running real services across hosts who want ops to be safe and pleasant.
The main gaps it fills:
- Unlimited hosts in one dashboard - local socket, remote TLS daemons, and NAT'd/VPS boxes via a small outbound agent
- Compose from Git with auto-sync - redeploys on change, with a diff of what's about to change before it does
- CVE scanning in the update loop - Grype/Trivy per image, and you can block an auto-update if the new image is more vulnerable than the current one
- Compose validator - catches host-network/root-mount/secret mistakes before you deploy
- Secrets from your vault (1Password, Vault, Infisical, Doppler, Bitwarden, Proton Pass), injected at deploy, never written to disk
- Encrypted backups of volumes and stack files to local/S3/GCS
If you just poke at containers on your laptop, Docker Desktop is great. If unlimited hosts, update-gating, git stacks, and vault-backed secrets sound useful - that's the gap.
Dockhand
Hey Product Hunt 👋
We have built Dockhand because managing Docker across a homelab or enterprise meant juggling terminal tabs, half-abandoned dashboards, and SSH sessions - and none of them did everything we needed in one place.
So Dockhand is the tool we wanted: one clean UI for every host (local, remote, or NAT'd behind an agent), Compose stacks you can deploy straight from Git, live logs and an in-browser shell, CVE scanning before anything ships, and secrets pulled from 1Password/Vault/Infisical/Proton Pass without ever touching disk. Self-hosted, security-hardened, and free for personal use.
It's actively developed and we'd genuinely love your feedback - what would make it a keeper for your setup? Happy to answer anything in the comments.
what would make it a keeper for me: the CVE scanning before ship. We run a handful of small services and half our "known issues" are CVEs in base images we can't easily rebase without breaking something else. Does Dockhand just flag those every time, or is there a way to accept/allowlist a specific CVE on a specific image so it stops nagging you about something you've already decided is an acceptable risk? That distinction is usually what makes people ignore a scanner entirely after week two.
Dockhand
@galdayan a whitelist of CVEs is on the roadmap.
@jarek_k good to hear, that's the feature that decides whether we keep using it past week two. one thing worth thinking through when you build it: will the allowlist be scoped per-image, or global across the fleet? global is faster to set up but it's also how a genuinely new CVE in a different image quietly gets ignored because it shares a CVE ID with something you already accepted elsewhere.
How does this compare to just running Docker Desktop / Portainer? What's the main gap it fills?
Dockhand
hey @noah_1919
Fair question - Docker Desktop and Portainer both do their job. Docker Desktop is a local dev tool; Portainer is a general orchestration UI. Dockhand is for people running real services across hosts who want ops to be safe and pleasant.
The main gaps it fills:
- Unlimited hosts in one dashboard - local socket, remote TLS daemons, and NAT'd/VPS boxes via a small outbound agent
- Compose from Git with auto-sync - redeploys on change, with a diff of what's about to change before it does
- CVE scanning in the update loop - Grype/Trivy per image, and you can block an auto-update if the new image is more vulnerable than the current one
- Compose validator - catches host-network/root-mount/secret mistakes before you deploy
- Secrets from your vault (1Password, Vault, Infisical, Doppler, Bitwarden, Proton Pass), injected at deploy, never written to disk
- Encrypted backups of volumes and stack files to local/S3/GCS
If you just poke at containers on your laptop, Docker Desktop is great. If unlimited hosts, update-gating, git stacks, and vault-backed secrets sound useful - that's the gap.
interesting, what's your tech stack?
Dockhand
@paul_from_dentro svelte on nodej.js, and goland for the remote agent (hawser) https://github.com/Finsys/hawser
BetterClaw
Managing Docker across multiple machines can get messy fast. Nice to see everything brought together in one clean interface.