Why Use Watchtower on Unraid?

Unraid is one of the most popular homelab NAS and server operating systems, with a huge community of self-hosters running dozens of Docker containers — Plex, Jellyfin, Home Assistant, Vaultwarden, Nextcloud, game servers, and more. Without automation, updating all these containers requires navigating to each one in the Unraid Docker UI and clicking "Update" individually.

Watchtower Docker Unraid automates this entirely. Install Watchtower once, configure your schedule, and every container on your Unraid server stays current automatically — security patches, new features, and bug fixes all arrive without manual intervention.

Method 1: Install via Community Applications (Easiest)

The Community Applications (CA) plugin is the standard way to install Docker containers on Unraid:

  1. In Unraid WebUI, navigate to the Apps tab (Community Applications must be installed)
  2. Search for "Watchtower" in the search bar
  3. Find the containrrr/watchtower template (published by linuxserver or community)
  4. Click Install
  5. On the configuration screen, set:
# Key settings in the CA template:
Container Name: watchtower
Repository:     containrrr/watchtower
Network Type:   bridge (or host)

# Volume Mappings:
Container Path: /var/run/docker.sock
Host Path:      /var/run/docker.sock
Access Mode:    Read/Write

# Environment Variables (add these):
WATCHTOWER_CLEANUP=true
WATCHTOWER_SCHEDULE=0 0 4 * * *
WATCHTOWER_NOTIFICATIONS=slack          # Optional
WATCHTOWER_NOTIFICATION_SLACK_HOOK_URL= # Optional
  1. Click Apply to deploy Watchtower

Method 2: Manual Installation via Docker Tab

If you prefer not to use Community Applications:

  1. Go to Docker tab in Unraid WebUI
  2. Click Add Container
  3. Fill in the fields:
Name:        watchtower
Repository:  containrrr/watchtower
Icon URL:    https://containrrr.dev/watchtower-icon.png

# Extra Parameters field:
--restart=unless-stopped

# Add Volume mapping:
Container Path: /var/run/docker.sock
Host Path:      /var/run/docker.sock

# Add Environment Variables:
WATCHTOWER_CLEANUP = true
WATCHTOWER_SCHEDULE = 0 0 4 * * *
WATCHTOWER_POLL_INTERVAL = 86400
  1. Click Apply

Method 3: SSH / Terminal

Unraid supports SSH and has a built-in terminal. Install via command line:

# SSH into Unraid
ssh root@192.168.1.x

# Install Watchtower
docker run -d \
  --name watchtower \
  --restart unless-stopped \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -e WATCHTOWER_CLEANUP=true \
  -e WATCHTOWER_SCHEDULE="0 0 4 * * *" \
  containrrr/watchtower

# Verify it's running
docker ps | grep watchtower
docker logs watchtower
# Full recommended Watchtower config for Unraid homelab:
docker run -d \
  --name watchtower \
  --restart unless-stopped \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v /etc/localtime:/etc/localtime:ro \
  -e WATCHTOWER_CLEANUP=true \
  -e WATCHTOWER_SCHEDULE="0 0 3 * * *" \
  -e WATCHTOWER_ROLLING_RESTART=true \
  -e WATCHTOWER_NOTIFICATION_URL="telegram://BOT_TOKEN@telegram?channels=CHAT_ID" \
  containrrr/watchtower

Unraid-Specific Considerations

Unraid vs Watchtower: Who Updates Docker?

Unraid has its own built-in Docker update notification (the "Update Ready" badge in the Docker tab). Watchtower automates the actual update. You can use both, but be aware:

  • Unraid's update check is a notification-only system — it doesn't auto-apply updates
  • Watchtower handles the actual pull + restart automatically
  • If both are active, Unraid may show "Update Ready" badges even after Watchtower already updated the containers — this is cosmetic and resolves on next Unraid check

Protecting Containers You Don't Want Auto-Updated

In Unraid, add the disable label via Extra Parameters in the container template:

# In the "Extra Parameters" field of an Unraid container template:
--label=com.centurylinklabs.watchtower.enable=false

# Or add in the Label section of the container configuration

Watching Logs in Unraid

# Via Unraid Docker tab:
# Click the Watchtower container → click the Logs icon

# Via SSH/terminal:
docker logs watchtower --follow

# Last 50 lines:
docker logs watchtower --tail 50

Containers to Exclude on Unraid

These containers are common on Unraid and should generally be excluded from auto-updates:

ContainerRecommendationReason
MariaDB / MySQL✗ ExcludeMajor version upgrades break data compatibility
PostgreSQL✗ ExcludeSame — manual migration required
Nextcloud✗ ExcludeMajor versions need manual upgrade wizard
Plex✓ IncludeSafe to auto-update, metadata library is unaffected
Jellyfin✓ IncludeSafe to auto-update
Home Assistant⚠ CautionTest on minor versions; major versions may break integrations
Vaultwarden✓ IncludeSecurity-critical — always keep updated
Portainer⚠ CautionLet Portainer manage its own updates for stability

Frequently Asked Questions

How do I install Watchtower on Unraid?

The easiest way is via Community Applications (CA): open the Apps tab, search "Watchtower", and install the containrrr/watchtower template. The template auto-fills most settings. You'll need to manually add environment variables like WATCHTOWER_CLEANUP=true and WATCHTOWER_SCHEDULE in the template configuration.

Will Watchtower update Unraid's built-in Docker containers?

Yes — Watchtower monitors all running Docker containers regardless of how they were installed. To protect specific containers (databases, Nextcloud), add --label=com.centurylinklabs.watchtower.enable=false in the container's Extra Parameters field in the Unraid Docker template.

Should I use Unraid's built-in update feature or Watchtower?

They serve different needs. Unraid's built-in Docker check shows update notifications but requires manual clicks to apply. Watchtower fully automates the process on a schedule. For a hands-off homelab, use Watchtower. For more control over individual container updates, use Unraid's native check and apply selectively.

JL
Jamie Lee
Homelab Engineer · Unraid community member since v6
Jamie runs a 60+ container Unraid homelab and has been using Watchtower for automated Docker updates since 2021. All Unraid-specific configurations in this guide are tested on Unraid 7.x with Docker Engine 26.x.