Here’s a possible solution: feel free to try my version with Docker 29.
Is your feature request related to a problem? Please describe.
Hi all,
Since this issue has been open for a long time and the original repository appears to be unmaintained (the last commit was exactly two years ago), I've created a maintained fork that fully resolves this problem:
🔗 https://github.com/Marrrrrrrrry/watchtower
Describe the solution you'd like
Key improvements include:
Upgraded all dependencies Simplified previously over-complicated functions Tested thoroughly on multiple AMD64 servers of my own Published Docker images to Docker Hub If you're still affected by this issue, feel free to try my fork. I will continue maintaining it—though I'm busy making a living, so routine updates (e.g., handling API deprecations) may happen roughly every three months. However, for urgent issues like this one, I’ll respond and fix them as quickly as possible.
Describe alternatives you've considered
/
Additional context
No response
Hi there! 👋🏼 As you're new to this repo, we'd like to suggest that you read our code of conduct as well as our contribution guidelines. Thanks a bunch for opening your first issue! 🙏
or just use the well maintained fork https://github.com/nicholas-fedor/watchtower
Yes, but I've refactored a large portion of the codebase, and now my project shows full compliance with Go standards on https://goreportcard.com/report/github.com/Marrrrrrrrry/watchtower.
Hi @Marrrrrrrrry
debian@vps-b0657e75:~$ docker run --detach
--name watchtower
--volume /var/run/docker.sock:/var/run/docker.sock
marrrrrrrrrry/watchtower
Unable to find image 'marrrrrrrrrry/watchtower:latest' locally
docker: Error response from daemon: pull access denied for marrrrrrrrrry/watchtower, repository does not exist or may require 'docker login': denied: requested access to the resource is denied
Run 'docker run --help' for more information
@Marrrrrrrrry I cannot pull the image. The issue is just like @Karazhan201
Yes, but I've refactored a large portion of the codebase, and now my project shows full compliance with Go standards on https://goreportcard.com/report/github.com/Marrrrrrrrry/watchtower.
That might be the case. Same goes for https://github.com/nicholas-fedor/watchtower. And if you have a look into it closer, you'll see that there was not only refactored the code, there are also countless new features and enhancements. Maybe you wonna join the project and contribute with PRs?
@Karazhan201 @GeuntaBuwono I typed my username incorrectly, but I've now fixed the issue. Please feel free to try again!
Great! 😄 Everything’s working then.
sudo docker pull marrrrrrrrry/watchtower
Using default tag: latest
latest: Pulling from marrrrrrrrry/watchtower
no matching manifest for linux/arm64/v8 in the manifest list entries
@Marrrrrrrrry Can you provide a arm64/v8 image under the latest tag?
Yes, but I've refactored a large portion of the codebase, and now my project shows full compliance with Go standards on https://goreportcard.com/report/github.com/Marrrrrrrrry/watchtower.
https://github.com/nicholas-fedor/watchtower also has A+ for Go and maintained about year or more and lot of people included me already switched to it.
So maybe really you can join and collaborate with his project? Of course, without downplaying for your work already done.
@Arragon5xpwm When you posted your comment, I had already pushed all the architecture images included in the old version of Watchtower, including arm64. Feel free to give it a try! However, please note that I've only conducted extensive multi-day testing on the amd64 architecture. If your data is critically important, you can add a parameter to make Watchtower monitor containers without automatically updating them. But perhaps you'll just trust my capabilities!
@masterwishx I don’t currently have any plans to merge with his project. His approach automatically matches old and new Docker versions, whereas my approach is: users of older Docker versions (below 29) should directly use the original project—after all, it’s been thoroughly battle-tested over many years. For newer versions, including Docker 29 and later, I provide my own solution, where I’ve updated the version numbers to stay compatible with Docker’s newer API.
I’m currently writing new documentation (so far, I’ve only ported the documentation for the new platform). When the day comes that I’m no longer able to maintain this project, I’ll merge it into whichever popular community project is still active at that time.
I don’t currently have any plans to merge with his project. His approach automatically matches old and new Docker versions, whereas my approach is: users of older Docker versions (below 29)
I see, anyway Thanks for making new life for this cool app..
or just use the well maintained fork https://github.com/nicholas-fedor/watchtower
Yes, this is the way! Thanks for the link!
Yes, but I've refactored a large portion of the codebase, and now my project shows full compliance with Go standards on goreportcard.com/report/github.com/Marrrrrrrrry/watchtower.
That might be the case. Same goes for nicholas-fedor/watchtower. And if you have a look into it closer, you'll see that there was not only refactored the code, there are also countless new features and enhancements. Maybe you wonna join the project and contribute with PRs?
I've honestly had more issues with nicholas's version of watchtower that I don't have with any other persons version watchtower especially when it comes to the com.centurylinklabs.watchtower.depends-on feature.
@JourneyOver May I ask if you've used my branch? Have you encountered any similar issues?
I'm currently fixing a security vulnerability in the upstream project. I've reviewed the module you mentioned in my own project, and it doesn't seem to be affected by this particular issue. However, that module does have other legacy issues inherited from the upstream project, which I'm now fixing step by step.
@Marrrrrrrrry I never could get your version to work, every time I tried to pull down the latest or even latest-dev it kept failing to even pull for some reason so I was never able to test your releases and docker was not being very helpful in giving me any type of hint on what the issue was.
@JourneyOver I don’t have a latest-dev tag, but the latest tags are all working fine. What error are you seeing on your end? Could you please share the error message with me? I’ve successfully deployed it both inside and outside mainland China, so it probably isn’t a network issue.
I mean, could you show me the logs? Maybe the frontend isn't showing any error messages?
@Marrrrrrrrry shows you having a latest-dev tag here
and like mentioned, when I tried it last I wasn't getting any error messages and such, it just threw some generic message about not being able to pull the image but I don't remember the full message.
Either way though it seems like whatever was going on when I last tried is fixed as it was able to pull just fine now with both the latest-dev and latest tags.
@JourneyOver Okay, since I didn’t carefully review the original project’s latest-dev CI/CD pipeline, I set up a pipeline that builds images with suffixed tags—for example, -rc2 for today’s release. If you encounter any issues, feel free to reply here, and I’ll do my best to help.