Docker Hub Tag/Digest Delta Monitor avatar

Docker Hub Tag/Digest Delta Monitor

Pricing

from $1.00 / 1,000 tag or digest changes

Go to Apify Store
Docker Hub Tag/Digest Delta Monitor

Docker Hub Tag/Digest Delta Monitor

Monitors Docker Hub image repositories for new tags and digest changes on mutable tags via official Hub JSON APIs. First run baselines without charging. PPE event: digest-change.

Pricing

from $1.00 / 1,000 tag or digest changes

Rating

0.0

(0)

Developer

Collin Reynolds

Collin Reynolds

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

Watch Docker Hub image repositories for new tags and digest pointer changes on mutable tags (latest, stable, …) via the official Hub JSON API. Only deltas since the last run are written to the dataset — ideal for scheduled base-image and dependency monitoring.

Pricing (pay per event): charged mainly for each new tag or digest change detected (digest-change @ $0.001). First run baselines quietly (0 dataset items / 0 delta charges) so you are not billed for history. Same baseline-safe PPE shape as the live GitHub Releases Delta Monitor.

Why use this

  • API-only — official Docker Hub Hub HTTP JSON (/v2/.../tags); no HTML scraping of hub.docker.com UI
  • Digest-aware — fingerprints are tag + digest, so mutable tags fire when the pointer moves
  • Delta-only — subsequent runs emit new tags and digest changes only
  • First-run safe — empty state seeds LAST_SEEN with zero PPE delta charges
  • Optional tag allowlist — watch just latest / stable without inventorying every historical tag
  • Optional Hub token — higher rate limits; public repos work without one
  • Schedule-friendly — pair with an Apify schedule for continuous monitoring

Input

FieldRequiredDescription
imagesyesList of namespace/repository (or official short names like nginxlibrary/nginx)
tagsnoTag allowlist (e.g. ["latest","stable"]); empty = all tags within page budget
hubTokennoDocker Hub PAT (secret) as Authorization: Bearer
sinceTagnoOn first run for an image, treat this tag and older (newest-first) as already seen
maxPagesnoMax Hub tags pages per image (default 2)
pageSizenoHub page_size 1–100 (default 100)
resetStatenoClear LAST_SEEN and re-baseline (0 emits that run)

Example

{
"images": ["library/nginx", "library/python"],
"tags": ["latest", "stable"],
"maxPages": 2,
"pageSize": 100,
"resetState": false
}

Output

Each dataset item is a newly detected tag or digest change, for example:

  • image, tag, digest, previous_digest, change_kind (new-tag | digest-change), last_updated, full_ref, hub_url

First-run behavior

SituationDataset itemsdigest-change charges
Empty state, no sinceTag00 (baseline only)
Empty state + sinceTagOnly newer-than that tag (newest-first)1 per item
Later runsNew tags + digest pointer moves1 per item

Mutable tags — read carefully

Tags like latest, stable, or 3 are mutable: the same name can point at a new content digest after a rebuild or roll-forward. This Actor:

  • Stores fingerprints as tag:{name}:digest:{sha256:…}
  • Emits a digest-change when the digest for a known tag name changes
  • Emits a new-tag when a tag name appears for the first time in the watched set

Pin immutable digests in production deploys when you need bit-for-bit reproducibility; use this Actor to detect when mutable pointers move.

Tips

  1. Run once to baseline, then attach a schedule (e.g. hourly/daily).
  2. Prefer a tag allowlist for busy official images (thousands of tags).
  3. Add a hubToken if you monitor many repos (anonymous Hub rate limits are lower).
  4. Set a user max total charge on the run so costs stay predictable.

ToS / scope

Uses Docker Hub’s official Hub HTTP JSON API only (tag list endpoints under https://hub.docker.com/v2/...). Digests are taken from API fields — never invented. See ./AGREEMENT.md. Respect Hub rate limits and terms. Private registries are out of scope for v0.