[Bug]: Watchtower container keeps stopping #1572
Bug Report Checklist
Bug DescriptionI have watchtower running on 3 different servers. Every few days I notice that one or all of them stop pulling updates for my services and when I hop into portainer to check I see that the watchtower container has changed from 'healthy' to 'created', and a secondary 'watchtower-old' container has been created and is sitting in an 'exited' state. I assume this is watchtower updating itself, which is fine, but how can i make the new container spin up into a 'healthy' state automatically. I'm at the point now of having to log in and check watchtower on 3 machines every few days as I don't know whether there are no new updates or watchtower has exited again. My compose has Steps to Reproducei don't know how to reproduce, it just happens Expected Behaviorwatchtower should update itself and start the new container instead of sitting dormant Watchtower Versionlatest Docker VersionClient: Docker Engine - Community
Version: 28.5.1
API version: 1.51
Go version: go1.24.8
Git commit: e180ab8
Built: Wed Oct 8 12:17:03 2025
OS/Arch: linux/amd64
Context: default
Server: Docker Engine - Community
Engine:
Version: 28.5.1
API version: 1.51 (minimum version 1.24)
Go version: go1.24.8
Git commit: f8215cc
Built: Wed Oct 8 12:17:03 2025
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: v1.7.28
GitCommit: b98a3aace656320842a23f4a392a33f46af97866
runc:
Version: 1.3.0
GitCommit: v1.3.0-0-g4ca628d1
docker-init:
Version: 0.19.0
GitCommit: de40ad0Docker Info (optional)Docker Compose Configurationversion: "2"
services:
app:
image: nickfedor/watchtower
hostname: 192.168.1.14
restart: unless-stopped
volumes:
- /var/run/docker.sock:/var/run/docker.sock
ports:
- 8080:8080
environment:
- TZ=Europe/Madrid
- NO_COLOR=true
- WATCHTOWER_SCHEDULE=0 0 05 * * *
- WATCHTOWER_INCLUDE_STOPPED=true
- WATCHTOWER_INCLUDE_RESTARTING=true
- WATCHTOWER_MONITOR_ONLY=false
- WATCHTOWER_HTTP_API_UPDATE=true
- WATCHTOWER_HTTP_API_METRICS=true
- WATCHTOWER_HTTP_API_TOKEN=mytoken
- WATCHTOWER_HTTP_API_PERIODIC_POLLS=true
- DOCKER_TLS_VERIFY=true
- WATCHTOWER_NOTIFICATIONS=slack
- WATCHTOWER_NOTIFICATION_SLACK_HOOK_URL=https://hooks.slack.com/services/[redacted]
- WATCHTOWER_NOTIFICATION_SLACK_IDENTIFIER=watchtower-NAS
- WATCHTOWER_NOTIFICATION_SLACK_CHANNEL=#watchtower
- WATCHTOWER_CLEANUP=trueDocker CLI CommandDebug LogsAdditional ContextNo response |
Replies: 1 comment 4 replies
|
This bug report has been converted to a support discussion topic. Please review the following documentation: https://watchtower.nickfedor.com/v1.16.1/getting-started/updating-watchtower/ In short, Watchtower is behaving as intended to avoid port conflict issues during self-updates. If you wish to continue having both the API enabled with port 8080 exposed and periodic updates, then it may be worth using the ephemeral self-updates feature that I recently released. It's an experimental option, which uses a sidecar container to orchestrate the self-update. |
This bug report has been converted to a support discussion topic.
Please review the following documentation: https://watchtower.nickfedor.com/v1.16.1/getting-started/updating-watchtower/
In short, Watchtower is behaving as intended to avoid port conflict issues during self-updates.
If you wish to continue having both the API enabled with port 8080 exposed and periodic updates, then it may be worth using the ephemeral self-updates feature that I recently released. It's an experimental option, which uses a sidecar container to orchestrate the self-update.