-
v1.0.0 Stable
released this
2026-08-22 16:50:20 -06:00 | 41 commits to main since this releaseFirst release of lagom — a supply-chain-safe Docker image updater. It watches the digests of images running in your containers, records when each digest was first seen, and updates containers to newer digest-addressed images only after they've satisfied a minimum-age policy. Nothing is ever pulled by a mutable tag; updates are always addressed by digest.
Features
Digest tracking
lagom trackinspects running containers (or theimagesconfig list) and records observed image digests with first-seen/last-seen timestamps in BoltDB ($LAGOM_CONFIG_PATH/state.db).- Registry inspection archives remote digest history per ref; history is retained for a 5x min-age window.
Age-gated updates
lagom updateadvances each image to the newest observed digest that satisfiesmin_age_days, pulled by digest with up tomax_pull_candidatesfallbacks.- Eligibility is judged from when lagom first observed a digest, cross-referenced against the registry build date so a backdated timestamp cannot make an unpulled digest eligible early.
- Historic-digest fallback keeps updates working when the remote tag is too new or unreachable.
--forcebypasses the age gate;--debugemits a pull/retag/prune/recreate audit trail.
Daemon mode
lagom daemonruns periodic track+update cycles, handling SIGHUP/SIGTERM/SIGINT gracefully.- Health endpoint on :8080 surfaces daemon errors for monitoring (bound to all interfaces so Docker health checks work).
- Optional notifications via shoutrrr (ntfy, SMTP, webhook, etc.), with
LAGOM_SERVER_NAMEto identify the sender.
Container recreation
--recreaterecreates containers that were running an updated image; thelagom.no-recreatelabel opts individual containers out, andlagom.enable=falsedisables a container entirely.
Configuration
- YAML config with
LAGOM_*environment variable overrides for every field; values are validated (minimums clamped to 1).
Build & packaging
- Version/commit/date injected at build time (
git describe); Dockerfile for running in a container; cross-compiled dist binaries for linux/darwin on amd64/arm64.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads