containrrr

watchtower: Automatically Update Running Docker Containers

Watchtower checks container images for updates and replaces running containers with newer versions while preserving their deployment options. It is no longer maintained and is intended for homelabs and local development, not commercial or production use.

Stars
24.6k
Forks
1.2k
Stars, last 10 days
-16

Our take

Health score

38/100

How it is scored
Activity
20
Community
89
Issues
21
Pull requests
21

-16 stars in the last 10 days

  • More contributors than 77% of the projects we track

Overview

Watchtower automates updates for running Docker containers. When a newer image is available in a registry, it can pull the image, gracefully stop the existing container, and restart it with the options used at deployment.

The project is marked as no longer maintained. Its README describes homelabs, media centers, and local development as suitable contexts, and advises against commercial or production use.

Key Features

  • Checks for newer images in Docker Hub or a container image registry.
  • Pulls updated images when available.
  • Stops the current container gracefully before replacing it.
  • Restarts the container with its original deployment options.
  • Runs as a Docker container and connects to the Docker daemon through its socket.

Use Cases

  • Homelab operators can automate routine updates to self-hosted containerized apps.
  • Media-center users can keep container images current without manually replacing containers.
  • Local development environments can refresh running services after new images are published.
  • Docker users who want automatic container replacement can evaluate it for non-production setups, while accounting for its unmaintained status.

Getting Started

The README provides this basic Docker command:

docker run --detach \
  --name watchtower \
  --volume /var/run/docker.sock:/var/run/docker.sock \
  containrrr/watchtower

See the README and documentation for configuration and usage details.

Considerations

The repository is archived, and its README states that the project is no longer maintained. Automatic image updates can replace running containers, so consider the operational impact before enabling them. The example requires access to /var/run/docker.sock. The project explicitly does not recommend Watchtower for commercial or production environments.

Found this useful?

Share it with someone who would like watchtower.