DrydockDrydock
ConfigurationWatchers

Popular IMGSET Presets

Copy/paste these YAML environment blocks into your drydock service.

Copy/paste these YAML environment blocks into your drydock service.

Update DD_WATCHER_LOCAL_... if your watcher name is not local.

Home Assistant

environment:
  - DD_WATCHER_LOCAL_IMGSET_HOMEASSISTANT_IMAGE=ghcr.io/home-assistant/home-assistant
  - DD_WATCHER_LOCAL_IMGSET_HOMEASSISTANT_TAG_INCLUDE=^\\d+\\.\\d+\\.\\d+$$
  - DD_WATCHER_LOCAL_IMGSET_HOMEASSISTANT_TAG_EXCLUDE=(alpha|beta|rc)
  - DD_WATCHER_LOCAL_IMGSET_HOMEASSISTANT_DISPLAY_NAME=Home Assistant
  - DD_WATCHER_LOCAL_IMGSET_HOMEASSISTANT_DISPLAY_ICON=hl:home-assistant
  - DD_WATCHER_LOCAL_IMGSET_HOMEASSISTANT_LINK_TEMPLATE=https://www.home-assistant.io/changelogs/core-$${major}$${minor}$${patch}

Traefik

environment:
  - DD_WATCHER_LOCAL_IMGSET_TRAEFIK_IMAGE=traefik
  - DD_WATCHER_LOCAL_IMGSET_TRAEFIK_TAG_INCLUDE=^\\d+\\.\\d+\\.\\d+$$
  - DD_WATCHER_LOCAL_IMGSET_TRAEFIK_TAG_EXCLUDE=(alpha|beta|rc)
  - DD_WATCHER_LOCAL_IMGSET_TRAEFIK_DISPLAY_NAME=Traefik
  - DD_WATCHER_LOCAL_IMGSET_TRAEFIK_DISPLAY_ICON=hl:traefik
  - DD_WATCHER_LOCAL_IMGSET_TRAEFIK_LINK_TEMPLATE=https://github.com/traefik/traefik/releases/tag/v$${major}.$${minor}.$${patch}

Caddy

environment:
  - DD_WATCHER_LOCAL_IMGSET_CADDY_IMAGE=caddy
  - DD_WATCHER_LOCAL_IMGSET_CADDY_TAG_INCLUDE=^\\d+\\.\\d+\\.\\d+$$
  - DD_WATCHER_LOCAL_IMGSET_CADDY_TAG_EXCLUDE=(beta|rc)
  - DD_WATCHER_LOCAL_IMGSET_CADDY_DISPLAY_NAME=Caddy
  - DD_WATCHER_LOCAL_IMGSET_CADDY_DISPLAY_ICON=hl:caddy
  - DD_WATCHER_LOCAL_IMGSET_CADDY_LINK_TEMPLATE=https://github.com/caddyserver/caddy/releases/tag/v$${major}.$${minor}.$${patch}

Nginx

Nginx publishes suffixed variants (-alpine, -perl). The TAG_EXCLUDE keeps them out, and TAG_FAMILY=strict (default) prevents cross-family matches if the exclude is loosened.

environment:
  - DD_WATCHER_LOCAL_IMGSET_NGINX_IMAGE=nginx
  - DD_WATCHER_LOCAL_IMGSET_NGINX_TAG_INCLUDE=^\\d+\\.\\d+\\.\\d+$$
  - DD_WATCHER_LOCAL_IMGSET_NGINX_TAG_EXCLUDE=(alpine|perl|rc)
  - DD_WATCHER_LOCAL_IMGSET_NGINX_TAG_FAMILY=strict
  - DD_WATCHER_LOCAL_IMGSET_NGINX_DISPLAY_NAME=Nginx
  - DD_WATCHER_LOCAL_IMGSET_NGINX_DISPLAY_ICON=hl:nginx
  - DD_WATCHER_LOCAL_IMGSET_NGINX_LINK_TEMPLATE=https://github.com/nginx/nginx/releases/tag/release-$${major}.$${minor}.$${patch}

PostgreSQL

PostgreSQL tags mix segment counts (17 vs 17.2) and -alpine suffixes. TAG_FAMILY=strict ensures drydock only proposes updates within the same segment/suffix family as your running tag.

environment:
  - DD_WATCHER_LOCAL_IMGSET_POSTGRES_IMAGE=postgres
  - DD_WATCHER_LOCAL_IMGSET_POSTGRES_TAG_INCLUDE=^\\d+(\\.\\d+)?$$
  - DD_WATCHER_LOCAL_IMGSET_POSTGRES_TAG_EXCLUDE=(alpine|beta|rc)
  - DD_WATCHER_LOCAL_IMGSET_POSTGRES_TAG_FAMILY=strict
  - DD_WATCHER_LOCAL_IMGSET_POSTGRES_DISPLAY_NAME=PostgreSQL
  - DD_WATCHER_LOCAL_IMGSET_POSTGRES_DISPLAY_ICON=hl:postgresql
  - DD_WATCHER_LOCAL_IMGSET_POSTGRES_LINK_TEMPLATE=https://www.postgresql.org/docs/release/$${major}.$${minor}/

Redis

Redis uses the same mixed-segment pattern as PostgreSQL (7 vs 7.4) with -alpine variants. TAG_FAMILY=strict keeps updates within your tag family.

environment:
  - DD_WATCHER_LOCAL_IMGSET_REDIS_IMAGE=redis
  - DD_WATCHER_LOCAL_IMGSET_REDIS_TAG_INCLUDE=^\\d+(\\.\\d+)?$$
  - DD_WATCHER_LOCAL_IMGSET_REDIS_TAG_EXCLUDE=(alpine|beta|rc)
  - DD_WATCHER_LOCAL_IMGSET_REDIS_TAG_FAMILY=strict
  - DD_WATCHER_LOCAL_IMGSET_REDIS_DISPLAY_NAME=Redis
  - DD_WATCHER_LOCAL_IMGSET_REDIS_DISPLAY_ICON=hl:redis
  - DD_WATCHER_LOCAL_IMGSET_REDIS_LINK_TEMPLATE=https://github.com/redis/redis/releases/tag/$${major}.$${minor}

Node.js

Node.js has extensive tag variants (22.14.0, 22-alpine, 22-bookworm-slim, lts-iron, etc.). TAG_INCLUDE restricts to bare semver tags and TAG_FAMILY=strict prevents cross-suffix false positives if you run a suffixed variant like 22.14.0-alpine.

environment:
  - DD_WATCHER_LOCAL_IMGSET_NODE_IMAGE=node
  - DD_WATCHER_LOCAL_IMGSET_NODE_TAG_INCLUDE=^\\d+\\.\\d+\\.\\d+(-alpine)?$$
  - DD_WATCHER_LOCAL_IMGSET_NODE_TAG_EXCLUDE=(slim|bookworm|bullseye|rc)
  - DD_WATCHER_LOCAL_IMGSET_NODE_TAG_FAMILY=strict
  - DD_WATCHER_LOCAL_IMGSET_NODE_DISPLAY_NAME=Node.js
  - DD_WATCHER_LOCAL_IMGSET_NODE_DISPLAY_ICON=hl:node-js
  - DD_WATCHER_LOCAL_IMGSET_NODE_LINK_TEMPLATE=https://github.com/nodejs/node/releases/tag/v$${major}.$${minor}.$${patch}

n8n

environment:
  - DD_WATCHER_LOCAL_IMGSET_N8N_IMAGE=n8nio/n8n
  - DD_WATCHER_LOCAL_IMGSET_N8N_TAG_INCLUDE=^\\d+\\.\\d+\\.\\d+$$
  - DD_WATCHER_LOCAL_IMGSET_N8N_TAG_EXCLUDE=(alpha|beta|rc)
  - DD_WATCHER_LOCAL_IMGSET_N8N_DISPLAY_NAME=n8n
  - DD_WATCHER_LOCAL_IMGSET_N8N_DISPLAY_ICON=hl:n8n
  - DD_WATCHER_LOCAL_IMGSET_N8N_LINK_TEMPLATE=https://github.com/n8n-io/n8n/releases/tag/n8n@$${major}.$${minor}.$${patch}

AdGuard Home

environment:
  - DD_WATCHER_LOCAL_IMGSET_ADGUARDHOME_IMAGE=adguard/adguardhome
  - DD_WATCHER_LOCAL_IMGSET_ADGUARDHOME_TAG_INCLUDE=^v?\\d+\\.\\d+\\.\\d+$$
  - DD_WATCHER_LOCAL_IMGSET_ADGUARDHOME_TAG_EXCLUDE=(beta|rc)
  - DD_WATCHER_LOCAL_IMGSET_ADGUARDHOME_DISPLAY_NAME=AdGuard Home
  - DD_WATCHER_LOCAL_IMGSET_ADGUARDHOME_DISPLAY_ICON=hl:adguard-home
  - DD_WATCHER_LOCAL_IMGSET_ADGUARDHOME_LINK_TEMPLATE=https://github.com/AdguardTeam/AdGuardHome/releases/tag/v$${major}.$${minor}.$${patch}

On this page