Closed Obsidiannite21 closed 1 year ago
Hi,
I also didn't know what a digest is, or semver.
digest
is a hash uniquely identifying a Docker image.tag
is a human readable string associates to a digest.Tags can fallen into 2 categories:
1.0.0
, 2.1.0-alpha5
...)latest
, dev
, freestyle
...)semver
tags are interesting because they can be logically compared to know if the change is major
, minor
or patch
.
Non semver tags are not very meaningful so the only thing we can detect is that the tag you're running doesn't point to the same digest
as the the tag found on the remote registry.
That means that there is an update but we don't know whether it's a major
, minor
or patch
change.
Generally speaking, I encourage to use semver
tags as most as possible rather than using latest
tags.
That's the main purpose of wud
; be able to use immutable tags instead of reyling of mutable tags (as latest
are).
Regarding your setup,
You can remove the wud.watch.digest=true
labels because it's deprecated; wud
will automatiocally track the digests of the image if it's not a semver
(which is the case for latest
tags).
The 'wud.tag.include=latest' is a good idea; it will prevent you to get false positive results.
The pushover configuration looks ok.
Regarding your issue that you don't receive pushover notifications, can you:
WUD_LOG_LEVEL: 'debug'
(you already did apparently)pushover
component has not been initializedpushover
component has been called or if an error occurredThanks for the response! Attached is the log. I see the following error multiple times in the log. I have no idea what it means.
Also if I were to include wud.tag.include=latest, would it be in the WUD yml or the target container YML if I want to only update certain containers / projects? Is there a label I should include that will indicate to WUD that the container should be ignored?
2023-03-09T14:10:00.967841949Z 09:10:00.964 DEBUG whats-up-docker/registry.hub: hub - Get portainer/portainer-ce:sha256:9fa1ec78b4e29d83593cf9720674b72829c9cdc0db7083a962bc30e64e27f64e manifest
2023-03-09T14:10:01.022243780Z 09:10:01.010 DEBUG whats-up-docker/registry.hub: hub - Get amir20/dozzle:sha256:627209dcd81e6c1fc38b93868de2b8fbf76adf34fd69703194be405f2da30c1c manifest
2023-03-09T14:10:01.193015454Z 09:10:01.190 DEBUG whats-up-docker/watcher.docker.local: Container watched for the first time (container=local_node-red)
2023-03-09T14:10:01.199247191Z 09:10:01.196 DEBUG whats-up-docker/trigger.docker.1: Run trigger (container=local_node-red)
2023-03-09T14:10:01.201293420Z 09:10:01.199 DEBUG whats-up-docker/trigger.docker.1: Get hub registry manager (container=local_node-red)
2023-03-09T14:10:01.202362184Z 09:10:01.200 DEBUG whats-up-docker/trigger.docker.1: Get hub registry credentials (container=local_node-red)
2023-03-09T14:10:01.213042606Z 09:10:01.210 DEBUG whats-up-docker/trigger.docker.1: Get container 7d8d0dc3d531360f382eb0cd42f90dc4dee00a55c3f7a1ad5e891f92da39dec2
2023-03-09T14:10:01.219969878Z 09:10:01.217 DEBUG whats-up-docker/trigger.pushover.1: Run trigger (container=local_node-red)
2023-03-09T14:10:01.248403503Z 09:10:01.243 DEBUG whats-up-docker/trigger.docker.1: Inspect container 7d8d0dc3d531360f382eb0cd42f90dc4dee00a55c3f7a1ad5e891f92da39dec2
2023-03-09T14:10:01.280675033Z 09:10:01.279 DEBUG whats-up-docker/registry.hub: hub - Get photoprism/photoprism:sha256:803b18007ae85092be63ce7cc36b7b1ba6b0d18104b209b96c6b9fd8779caa0a manifest
2023-03-09T14:10:01.447523506Z 09:10:01.440 INFO whats-up-docker/trigger.docker.1: Pull image nodered/node-red:latest-18-minimal (container=local_node-red)
2023-03-09T14:10:01.630362423Z 09:10:01.629 WARN whats-up-docker/trigger.pushover.1: Error (expire must be supplied with priority=2) (container=local_node-red)
2023-03-09T14:10:01.631338432Z 09:10:01.629 DEBUG whats-up-docker/trigger.pushover.1: expire must be supplied with priority=2 (container=local_node-red)
2023-03-09T14:10:01.631388601Z Error: expire must be supplied with priority=2
2023-03-09T14:10:01.631396351Z at Pushover.push.onerror (/home/node/app/triggers/providers/pushover/Pushover.js:104:46)
2023-03-09T14:10:01.631403018Z at Pushover.errors (/home/node/app/node_modules/pushover-notifications/lib/pushover.js:143:12)
2023-03-09T14:10:01.631409060Z at IncomingMessage.
Thanks!
2023-03-09T14:10:01.631388601Z Error: expire must be supplied with priority=2
I don't know much about pushover
but it seems that the API is complaining because of the severity=2
(Emergency Priority)
I should probably add optional retry
and expire
options to the pushover
configuration?
(In the mean time, you can change the priority to 0
and it should be working)
I've updated the Priority to 0. Now I don't see any errors, but I also didn't get a notification that there are 4 updates available. I've attached the log again.
whatsupdocker-2023-03-11T14-09-17.log
Hi,
WUD won't trigger again for existing results so please remove first the content of /home/odroid/dc-config/wud
and restart from scratch.
Please also notice that you've reached your Docker Hub free tier quotas
StatusCodeError: 429 - {"errors":[{"code":"TOOMANYREQUESTS","message":"You have reached your pull rate limit. You may increase the limit by authenticating and upgrading: https://www.docker.com/increase-rate-limit"}]}
so you may have to wait a little before seeing things working back as usual.
Understood. I’ll give that a try and let you know if it doesn’t work.
I have a Dockerhub account, which entitles me to more pulls. Is there a way to enter those credentials in WUD?
I have a Dockerhub account, which entitles me to more pulls. Is there a way to enter those credentials in WUD?
Yes, for sure; please find here how to configure: https://fmartinou.github.io/whats-up-docker/#/configuration/registries/hub/
Thank you.
Can you give a try to this fix version, please?
fmartinou/whats-up-docker:fix__238_fix_pushover_priority_2
(it should fix your issue with priority=2)
You can set the needed expire & retry values with
WUD_TRIGGER_PUSHOVER_{trigger_name}_EXPIRE=xxx
WUD_TRIGGER_PUSHOVER_{trigger_name}_RETRY=xxx
If it's ok for your, then it will be integrated to the next release.
Sure, I'd be happy to later this evening. What should I put for the expire and retry values?
The values are the original ones detailed in the pushover documentation
https://pushover.net/api#priority
For example, sending a retry parameter of 60 and an expire parameter of 3600 will cause your notification to be retried every 60 seconds for 1 hour.
That seemed to work. No errors in the log at least.
Thanks for the feedback! 👍 I merge it ; the fix will be available in the next release.
Released as 6.1.0
I apologize in advance if I missed something obvious but I'm having a hard time configuring WUD. I've read through the entire guide multiple times but I'm still stuck. Attached is my YML file with certain items (such as the admin PW & PushOver info) *** out.
To start, I'd like WUD to notify me, via PushOver, when a new image is available. Then, once that is working, I'd like a few select images to automatically download with the containers recreated. So far, WUD is running, I'm able to login using the hash, WUD picks up all the containers and is able to identify which ones need an update. It looks like it's pulling the new image, which is a good sign. Since DryRun is on, that part seems to be working as expected. However, the pushover notification is not occurring at any point. I've deleted a test image, downloaded an old version, and recreated the container so WUD would have something to work with but that did not trigger PO. I have PO working with other devices & services so I'm sure I've configured PO correctly. I don't see anything in the log indicating that a PO was sent, failed, etc. Any suggestions?
I also realize that I haven't done anything to address updating individual images / containers. All of my containers have the "latest" tag so according to the provided examples this seems to be the correct language to add, but does it get added to the target containers YML or the WUD yml? I also didn't know what a digest is, or semver. labels:
Thanks!
docker-compose.txt