{"slug": "watchtower", "name": "Watchtower", "category": "infra", "category_name": "Infrastructure and DevOps", "description": "", "recommenders": 3, "commenters": 4, "warners": 0, "score": 2.805, "rising": -0.98, "first": "2025-12-17", "latest": "2026-10-22", "why": "if someone wants a git like workflow, I recommend pushing docker images and then using watchtower", "why_is_quote": true, "has_verdict": false, "sentiment": {"recommend": 3, "neutral": 1, "compare": 0, "warn": 0}, "spark": [0, 2, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0], "listed": true, "loved": [], "caveat": "", "short_quote": "if someone wants a git like workflow, I recommend pushing docker images and then using watchtower", "kind": "", "icon": false, "domain": "containrrr.dev", "github_repo": null, "official_url": "https://containrrr.dev/watchtower/", "pricing": "", "aliases": ["Watchtower"], "verdict": null, "praise": [{"label": "", "summary": "", "quotes": [{"id": 760038593, "item_id": 47502412, "url": "https://news.ycombinator.com/item?id=47502412", "by": "0fflineuser", "date": "2026-03-24", "version": null, "stance": "recommend", "quote": "watchower automatically update all my containers to the latest image every morning", "excerpt": "I was running it in my homelab with docker compose using the litellm/litellm:latest image https://hub.docker.com/layers/litellm/litellm/latest/images/sha256-8c126416da606bad27c5d48cc2f8e526ca69fe5711009bf3c132d53eb3c536b9 , I don't think this was compromised as it is from 6 months ago. I guess I am lucky as I have watchower automatically update all my containers to the latest image every morning if there are new vers", "context": "", "use_case": "auto-updating containers", "switched_from": "", "story": "LiteLLM Python package compromised by supply-chain attack"}, {"id": 741538912, "item_id": 46346182, "url": "https://news.ycombinator.com/item?id=46346182", "by": "Imustaskforhelp", "date": "2025-12-21", "version": null, "stance": "recommend", "quote": "if someone wants a git like workflow, I recommend pushing docker images and then using watchtower", "excerpt": "Fascinating stuff. Personally what I ended up doing with my vps was to just have a docker-compose.yaml and then just docker-compose it to start it and then I have a custom script which would run a service at a port after which I can just \"bash expose.sh subdomain.domain.app PORT\" and it uses cloudflared/cloudflare tunnels under the loop and if someone wants a git like workflow, I recommend pushing docker images and t", "context": "", "use_case": "automatic container updates", "switched_from": "", "story": "Show HN: Mushak \u2013 Zero config zero downtime Docker/Compose to server deployment"}, {"id": 740891712, "item_id": 46305732, "url": "https://news.ycombinator.com/item?id=46305732", "by": "9021007", "date": "2025-12-17", "version": null, "stance": "recommend", "quote": "I use watchtower on all my docker installations", "excerpt": "This is incredibly sad to see. I use watchtower on all my docker installations.", "context": "", "use_case": "Docker auto-updates", "switched_from": "", "story": "Containrrr/watchtower is now unmaintained"}]}], "caveats": [], "who": [], "tags": [], "use_cases": ["container updates", "auto-updating containers", "automatic container updates", "docker auto-updates"], "compared": [], "makers": [], "threads": [{"url": "https://news.ycombinator.com/item?id=50192900", "title": "CVE-2026-111943: Compromised Intermediate Certificate Authority", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=47501729", "title": "LiteLLM Python package compromised by supply-chain attack", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=46344546", "title": "Show HN: Mushak \u2013 Zero config zero downtime Docker/Compose to server deployment", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=46305708", "title": "Containrrr/watchtower is now unmaintained", "mentions": 1}], "sentiment_by_month": {"2025-11": {}, "2025-12": {"recommend": 2}, "2026-01": {}, "2026-02": {}, "2026-03": {"recommend": 1}, "2026-04": {}, "2026-05": {}, "2026-06": {}, "2026-07": {}, "2026-08": {}, "2026-09": {}, "2026-10": {"neutral": 1}}, "versions": [], "version_unnamed": 0, "family_ref": null, "runs_on": null, "lines": [], "quotes": [{"id": 803119216, "item_id": 50194951, "url": "https://news.ycombinator.com/item?id=50194951", "by": "Winfred-zz", "date": "2026-10-22", "version": null, "stance": "neutral", "quote": "I ran watchtowerr before, but I think this is a smarter way to do it.", "excerpt": "I use some rules and a few generated scripts and have a LLM handle the management of the containers. Security through a ssh gateway, allows them to deploy/remove containers and then the rule is to stay at least two weeks behind on releases, unless the latest release is security related, which it figures out by reading the release notes. I ran watchtowerr before, but I think this is a smarter way to do it.", "context": "", "use_case": "container updates", "switched_from": "", "story": "CVE-2026-111943: Compromised Intermediate Certificate Authority"}, {"id": 760038593, "item_id": 47502412, "url": "https://news.ycombinator.com/item?id=47502412", "by": "0fflineuser", "date": "2026-03-24", "version": null, "stance": "recommend", "quote": "watchower automatically update all my containers to the latest image every morning", "excerpt": "I was running it in my homelab with docker compose using the litellm/litellm:latest image https://hub.docker.com/layers/litellm/litellm/latest/images/sha256-8c126416da606bad27c5d48cc2f8e526ca69fe5711009bf3c132d53eb3c536b9 , I don't think this was compromised as it is from 6 months ago. I guess I am lucky as I have watchower automatically update all my containers to the latest image every morning if there are new vers", "context": "", "use_case": "auto-updating containers", "switched_from": "", "story": "LiteLLM Python package compromised by supply-chain attack"}, {"id": 741538912, "item_id": 46346182, "url": "https://news.ycombinator.com/item?id=46346182", "by": "Imustaskforhelp", "date": "2025-12-21", "version": null, "stance": "recommend", "quote": "if someone wants a git like workflow, I recommend pushing docker images and then using watchtower", "excerpt": "Fascinating stuff. Personally what I ended up doing with my vps was to just have a docker-compose.yaml and then just docker-compose it to start it and then I have a custom script which would run a service at a port after which I can just \"bash expose.sh subdomain.domain.app PORT\" and it uses cloudflared/cloudflare tunnels under the loop and if someone wants a git like workflow, I recommend pushing docker images and t", "context": "", "use_case": "automatic container updates", "switched_from": "", "story": "Show HN: Mushak \u2013 Zero config zero downtime Docker/Compose to server deployment"}, {"id": 740891712, "item_id": 46305732, "url": "https://news.ycombinator.com/item?id=46305732", "by": "9021007", "date": "2025-12-17", "version": null, "stance": "recommend", "quote": "I use watchtower on all my docker installations", "excerpt": "This is incredibly sad to see. I use watchtower on all my docker installations.", "context": "", "use_case": "Docker auto-updates", "switched_from": "", "story": "Containrrr/watchtower is now unmaintained"}]}