awesome-repositories.com
Blog
awesome-repositories.com

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

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectAboutHow we rankPressMCP server
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
containrrr avatar

containrrr/watchtowerArchived

0
View on GitHub↗
24,635 stars·1,141 forks·Go·Apache-2.0·20 viewscontainrrr.dev/watchtower↗

Watchtower

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, ensuring that dependent containers are handled in the correct order. Users can further customize the update process by defining lifecycle hooks that execute shell commands before or after a container is replaced, allowing for tailored initialization and cleanup tasks.

Beyond automated updates, the tool provides extensive infrastructure observability and flexible management options. It supports event-driven updates via HTTP webhooks, declarative filtering to target specific containers, and secure remote management through encrypted communication and private registry authentication. Operational statistics can be exported to external monitoring systems, and the service can be configured to run in a passive observation mode to track image changes without performing automated redeployments.

Features

  • Automated Container Updaters - Automates the detection and deployment of new container image versions.
  • Automated Lifecycle Management - Keeps running containerized applications up to date by automatically deploying new image versions.
  • Container Lifecycle Managers - Monitors running container images for updates and automatically replaces them with newer versions based on defined policies.
  • Container Runtimes - Interacts with container host sockets to inspect, stop, and restart services while maintaining dependency order.
  • Deployment Orchestrators - Executes custom scripts and commands before and after container updates to manage complex initialization and cleanup tasks.
  • Container Runtime Integrations - Provides direct control over container lifecycles by communicating with the container runtime API.
  • Deployment Agents - Tracks remote image registries and triggers automatic redeployments to keep services synchronized with the latest builds.
  • Container Security - Automated updates for running containerized applications.
  • Dependency-Aware Orchestration - Restarts dependent containers in the correct order to maintain service availability.
  • Lifecycle Hooks - Runs custom shell commands before or after container update cycles using container labels.
  • Runtime Connectivity - Supports connecting to local Unix sockets or remote TCP endpoints for management operations.
  • Webhook Handlers - Triggers container image updates via external webhooks to integrate with continuous delivery pipelines.
  • Webhook Triggers - Enables external services to initiate update cycles on demand via HTTP endpoints.
  • Registry Authentication Providers - Manages secure access to private image repositories through credential helpers.
  • Prometheus Exporters - Defines a monitoring server to periodically scrape performance and status data using a specific endpoint.
  • Cron Scheduling - Controls the frequency of image update checks using cron expressions.
  • Notification Integrations - Delivers alerts to various services using service URLs and custom templates to format log entries.
  • Container Filtering Policies - Enables granular control over which containers are subject to automated updates using metadata tags.
  • Label-Based Selection - Restricts management operations to specific containers marked with defined labels.
  • Remote Access Management - Manages containerized services across remote hosts using encrypted communication and secure credential handling.
  • TLS Verification - Ensures secure, encrypted communication between the monitoring service and the container runtime.
  • Infrastructure Observability - Exposes real-time metrics and status data from container management processes for performance tracking.

Star history

Star history chart for containrrr/watchtowerStar history chart for containrrr/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.
  • nicholas-fedor/watchtowernicholas-fedor avatar

    nicholas-fedor/watchtower

    2,771View on GitHub↗

    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 maintai

    Gocommunity-projectdockergo
    View on GitHub↗2,771
  • hatchet-dev/hatchethatchet-dev avatar

    hatchet-dev/hatchet

    6,622View on GitHub↗

    Hatchet is an open-source durable workflow engine and task orchestration platform. It provides a framework for building and executing fault-tolerant, multi-step pipelines as directed acyclic graphs (DAGs), with automatic retries, scheduling, and real-time observability. The system is built around durable task checkpointing, which persists execution state after each step so work can resume from the last checkpoint after a worker crash or restart, and it supports event-driven task resumption that pauses a task until a matching external event arrives. The platform distinguishes itself through it

    Goconcurrencydagdistributed
    View on GitHub↗6,622
  • containerd/containerdcontainerd avatar

    containerd/containerd

    20,369View on GitHub↗

    Containerd is a daemon-based container runtime that manages the complete lifecycle of containers on a host system. It functions as a core orchestration backend, handling image distribution, storage, and process execution while adhering to industry-standard specifications for container execution and configuration. The project is distinguished by its modular, plugin-based architecture, which allows for the extension of storage, runtime, and networking capabilities without requiring a full daemon recompile. It utilizes a shim-based execution model to delegate low-level operations, ensuring isola

    Gocncfcontainerdcontainers
    View on GitHub↗20,369
  • healthchecks/healthcheckshealthchecks avatar

    healthchecks/healthchecks

    9,891View on GitHub↗

    Healthchecks is a heartbeat monitoring service and cron job monitoring tool designed to track the execution and success of scheduled tasks and systemd timers. It functions as a dead man switch, alerting users when expected periodic signals from remote processes fail to arrive. The system accepts health signals via HTTP and SMTP, allowing it to track infrastructure heartbeats from sources ranging from CI/CD workflows to network routers. It distinguishes itself by supporting the capture of diagnostic data, including exit codes and execution logs, and by calculating the duration between start an

    Pythoncroncron-jobsdevops
    View on GitHub↗9,891
See all 30 alternatives to Watchtower→

Frequently asked questions

What does containrrr/watchtower do?

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.

What are the main features of containrrr/watchtower?

The main features of containrrr/watchtower are: Automated Container Updaters, Automated Lifecycle Management, Container Lifecycle Managers, Container Runtimes, Deployment Orchestrators, Container Runtime Integrations, Deployment Agents, Container Security.

What are some open-source alternatives to containrrr/watchtower?

Open-source alternatives to containrrr/watchtower include: nicholas-fedor/watchtower — Watchtower is a Docker container update automator that monitors registries for new image pushes and automatically… hatchet-dev/hatchet — Hatchet is an open-source durable workflow engine and task orchestration platform. It provides a framework for… containerd/containerd — Containerd is a daemon-based container runtime that manages the complete lifecycle of containers on a host system. It… healthchecks/healthchecks — Healthchecks is a heartbeat monitoring service and cron job monitoring tool designed to track the execution and… kata-containers/kata-containers — Kata Containers is an OCI container runtime that launches containers inside lightweight virtual machines to combine… crazy-max/diun — diun is a monitoring service that tracks container registries for new tags or digest changes to notify users when…