awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
nicholas-fedor avatar

nicholas-fedor/watchtowerFork

0
View on GitHub↗
2,771 stars·37 forks·Go·apache-2.0·9 viewswatchtower.nickfedor.com↗

Watchtower

Watchtower is a Docker container update automator that monitors registries for new image pushes and automatically restarts containers with the latest versions. It functions as a container lifecycle manager, handling the process of bringing running containers up to date without manual intervention.

The service includes specialized controls to manage deployment risk and precision, such as image age deferral and deployment cooldowns to protect against buggy releases. It supports image tag pinning to restrict updates to specific version series and can operate as a self-updating service to maintain its own currency.

Beyond basic updates, the project provides infrastructure monitoring through Prometheus-compatible metrics and a webhook notification system with template-driven reporting. It manages the update lifecycle through sequential dependency-aware restarts, custom termination signals, and post-update image resource cleanup. For extended environments, it supports private registry authentication, remote daemon communication, and a token-secured management API for remote update triggers.

Features

  • Automated Container Image Updaters - Automatically updates running Docker containers to the latest image versions from a registry without manual intervention.
  • Automated Container Updaters - Monitors registries for new image pushes and automatically restarts containers with the latest versions.
  • Container Filtering Policies - Provides rules for selecting specific containers for monitoring and updates based on names, regex, or labels.
  • Container Lifecycle Management - Manages the stop and restart lifecycle of containers during the update process.
  • Container Lifecycle Management - Manages the process of stopping and restarting containers through custom signals, timeouts, and sequential ordering.
  • Docker Container Update Monitors - Monitors running Docker containers for new image pushes and automatically applies updates.
  • Registry Version Polling - Periodically checks remote registries for new image versions to detect available updates.
  • Registry Authentication Providers - Enables connection to protected image registries using environment variables, local configuration files, or external credential helpers.
  • Release Age Filters - Delays the application of new images until they meet a minimum age requirement to protect against buggy releases.
  • Lifecycle Script Execution - Executes custom scripts triggered by specific stages of the container update lifecycle.
  • Update Execution APIs - Provides APIs to programmatically trigger update processes for specific or all containers.
  • Registry Authentication - Uses environment variables or local configuration files to authenticate with private image registries.
  • Webhook Notification Systems - Dispatches custom formatted update reports and session logs to external services via HTTP requests.
  • CI/CD Workflows - Integrates container image updates into CI/CD pipelines using API triggers and lifecycle hooks.
  • Private Registries - Connects to protected container registries using credentials to pull and update private images.
  • Container Lifecycle Cleanup - Reclaims disk space by removing obsolete container images and anonymous volumes after updates.
  • Container Monitoring - Tracks image versions and update status via Prometheus metrics and custom notifications for system observability.
  • Remote Runtime Communication - Connects to container runtimes via network sockets to manage containers on separate host machines.
  • Dependency-Aware Orchestration - Orders container updates by analyzing linked services and network dependencies to minimize service disruption.
  • Dependency-Aware Restart Sequences - Determines the update sequence by following container dependencies, linked services, or network modes to minimize disruption.
  • Update Notification Services - Monitors running containers and dispatches alerts to various services when newer image versions are available.
  • Management APIs - Provides HTTP endpoints to trigger updates, monitor active containers, and export metrics.
  • Rolling Update Orchestrators - Updates containers sequentially and verifies health checks before proceeding to minimize service downtime.
  • Shutdown Signaling - Sends custom termination signals to containers during updates to ensure graceful shutdowns.
  • Tag Pinning - Restricts updates to the exact image reference and tag to ensure containers remain within a specific version series.
  • Lifecycle Hook Executions - Triggers external scripts at specific stages of the update process using custom identity mappings.
  • Deployment Cooldowns - Prevents immediate deployment of new images by enforcing a cooldown period based on image age.
  • Disk Space Cleaners - Identifies and removes unnecessary old container images and orphaned volumes to reclaim host storage.
  • Prometheus-Formatted HTTP Endpoints - Exposes container update status and performance metrics via a Prometheus-compatible HTTP endpoint.
  • Container Target Filters - Identifies which containers to monitor using specific metadata labels or regular expression patterns.

Star history

Star history chart for nicholas-fedor/watchtowerStar history chart for nicholas-fedor/watchtower

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to Watchtower

Similar open-source projects, ranked by how many features they share with Watchtower.
  • containrrr/watchtowercontainrrr avatar

    containrrr/watchtower

    24,635View on GitHub↗

    Watchtower is a container-based solution designed to automate the lifecycle management of Docker applications. It functions as a background service that monitors running containers, detects when new base image versions are available in registries, and automatically redeploys the containers to ensure they remain synchronized with the latest builds. The project distinguishes itself through its ability to orchestrate complex deployment workflows and maintain service availability during updates. It interacts directly with the container runtime to manage service dependencies and restart sequences,

    Goautomationcontinuous-deliverydevops
    View on GitHub↗24,635
  • theporgs/exegolThePorgs avatar

    ThePorgs/Exegol

    2,925View on GitHub↗

    Exegol is an offensive security platform and containerized tooling orchestrator designed to deploy and manage isolated security operations environments. It functions as a workspace manager that provisions pre-configured security images and toolkits within Docker containers to protect host systems from malicious payloads. The platform distinguishes itself by integrating AI security workflow orchestration, allowing AI assistants to discover and trigger security tools through a standardized communication protocol. It further provides remote desktop gateway capabilities, enabling GUI access via X

    Pythonctfdockerhacking
    View on GitHub↗2,925
  • crazy-max/diuncrazy-max avatar

    crazy-max/diun

    4,405View on GitHub↗

    diun is a monitoring service that tracks container registries for new tags or digest changes to notify users when image updates are available. It functions as a container orchestration watcher and registry notification engine, identifying images used within environments to ensure container deployments remain up to date. The project distinguishes itself by providing automated image discovery across multiple orchestrators and runtimes, including Kubernetes, Docker Swarm, Nomad, and containerd. It supports flexible configuration through YAML files, environment variables, and metadata labels or a

    Goautomationdiscorddocker
    View on GitHub↗4,405
  • donknap/dpaneldonknap avatar

    donknap/dpanel

    4,011View on GitHub↗

    dpanel is a web-based Docker management interface and remote server manager. It serves as a container lifecycle tool and orchestrator for deploying multi-container applications using Docker Compose configuration files and application stores. The project distinguishes itself as a central management console capable of controlling containers across multiple remote servers via API or SSH connections. It includes an integrated host filesystem browser for accessing files and folders on remote machines via SSH and SFTP. The platform covers container image workflows, including building custom images

    Go1panel1panel-appstoreant-design
    View on GitHub↗4,011
See all 30 alternatives to Watchtower→

Frequently asked questions

What does nicholas-fedor/watchtower do?

Watchtower is a Docker container update automator that monitors registries for new image pushes and automatically restarts containers with the latest versions. It functions as a container lifecycle manager, handling the process of bringing running containers up to date without manual intervention.

What are the main features of nicholas-fedor/watchtower?

The main features of nicholas-fedor/watchtower are: Automated Container Image Updaters, Automated Container Updaters, Container Filtering Policies, Container Lifecycle Management, Docker Container Update Monitors, Registry Version Polling, Registry Authentication Providers, Release Age Filters.

What are some open-source alternatives to nicholas-fedor/watchtower?

Open-source alternatives to nicholas-fedor/watchtower include: containrrr/watchtower — Watchtower is a container-based solution designed to automate the lifecycle management of Docker applications. It… theporgs/exegol — Exegol is an offensive security platform and containerized tooling orchestrator designed to deploy and manage isolated… crazy-max/diun — diun is a monitoring service that tracks container registries for new tags or digest changes to notify users when… donknap/dpanel — dpanel is a web-based Docker management interface and remote server manager. It serves as a container lifecycle tool… getwud/wud — Wud is a self-hosted container image update monitoring system that periodically checks running containers against… finsys/dockhand — Dockhand is a multi-host Docker manager and container management interface used to control the lifecycle of…