Skip to content

Image updates

Stacky checks the image of every running container for two kinds of update:

  • A new image for the same tag. For example, nginx:latest or postgres:17 was rebuilt. Stacky compares the registry’s manifest digest with the digest of the image you’re running.
  • A newer version tag. For example, traefik:v3.3.3 when v3.7.15 exists. Only tags with the same shape are compared, so 1.27-alpine is only compared with other #.#-alpine tags and never jumps to a -debian variant.

The Update column on the Containers page (and each service card) shows a badge, colored like What’s Up Docker’s:

Badge Meaning
Red Major version (1.x → 2.0)
Amber Minor version (3.3 → 3.7)
Green Patch (3.24.1 → 3.24.2)
Blue New build or release number (v2.8.3-ls364 → -ls367)
Gray New image for the same tag (“new digest”)

Click a badge to see the details:

  • Pull <tag>: pulls the rebuilt image and recreates the service.
  • Update to <version>: changes only the service’s image: line in your compose file (comments and formatting stay), then pulls and recreates it. If the image comes from a variable such as ${TAG}, stacky asks you to change the variable instead.
  • Ignore this update: hides this specific version or digest. The next newer one shows up again.

Use Updates available in the status filter, or the N updates button, to list everything with an update.

Checks run a minute after stacky starts, then every 6 hours (with some random jitter), whenever you click Check for updates, and after you deploy or update a stack. Set STACKY_UPDATE_INTERVAL (in hours) to change the schedule; 0 turns off scheduled checks.

Stacky only sends HEAD requests for manifests, which Docker Hub doesn’t count toward its pull limit. Tag lists are fetched only for version tags. If a registry still rate-limits stacky, the badge shows check failed with the reason instead of a misleading “up to date”.

Mount a Docker config.json that contains auths entries (as written by docker login) into the container:

volumes:
- /root/.docker/config.json:/root/.docker/config.json:ro

Credential helpers (credsStore) aren’t supported. Use docker login with a config file that stores the auth inline.

If you already run What’s Up Docker (WUD), add its URL and a personal API token (WUD → My Profile) under Settings → What’s Up Docker. Stacky asks WUD to re-check, then uses WUD’s answer for any image its own check couldn’t handle, such as a private registry it has no credentials for. Results that came from WUD are marked in the update dialog.

If you use WUD only for notifications, leave its dockercompose trigger off and apply updates from stacky. Stacky also picks up changes WUD makes to compose files on disk.