containrrr

    containrrr/watchtower

    A process for automating Docker container base image updates.

    automation
    devops
    continuous-delivery
    docker
    hacktoberfest
    notifications
    receive-notifications
    registry
    update-checker
    watchtower
    Go
    Apache-2.0
    23.5K stars
    1.0K forks
    23.5K watching
    Updated 2/27/2026
    View on GitHub
    Backblaze Advertisement

    Loading star history...

    Health Score

    5.6

    Weekly Growth

    +0

    +0.0% this week

    Contributors

    1

    Total contributors

    Open Issues

    213

    Generated Insights

    About watchtower

    Watchtower

    A process for automating Docker container base image updates.

    Circle CI codecov GoDoc Go Report Card latest version Apache-2.0 License Codacy Badge All Contributors Pulls from DockerHub

    Quick Start

    With watchtower you can update the running version of your containerized app simply by pushing a new image to the Docker Hub or your own image registry.

    Watchtower will pull down your new image, gracefully shut down your existing container and restart it with the same options that were used when it was deployed initially. Run the watchtower container with the following command:

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

    Watchtower is intended to be used in homelabs, media centers, local dev environments, and similar. We do not recommend using Watchtower in a commercial or production environment. If that is you, you should be looking into using Kubernetes. If that feels like too big a step for you, please look into solutions like MicroK8s and k3s that take away a lot of the toil of running a Kubernetes cluster.

    Documentation

    The full documentation is available at https://containrrr.dev/watchtower.

    Contributors

    Thanks goes to these wonderful people (emoji key):

    nils måsén
    nils måsén

    💻 📖 🚧 👀
    Simon Aronsson
    Simon Aronsson

    💻 📖 🚧 👀
    James
    James

    ⚠️ 🤔
    Florian
    Florian

    👀 📖
    Brian DeHamer
    Brian DeHamer

    💻 🚧
    Ross Cadogan
    Ross Cadogan

    💻
    stffabi
    stffabi

    💻 🚧
    Austin
    Austin

    📖
    David Gardner
    David Gardner

    👀 📖
    Tanguy ⧓ Herrmann
    Tanguy ⧓ Herrmann

    💻
    Rodrigo Damazio Bovendorp
    Rodrigo Damazio Bovendorp

    💻 📖
    Ryan Kuba
    Ryan Kuba

    🚇
    cnrmck
    cnrmck

    📖
    Harry Walter
    Harry Walter

    💻
    Robotex
    Robotex

    📖
    Gerald Pape
    Gerald Pape

    📖
    fomk
    fomk

    💻
    Sven Gottwald
    Sven Gottwald

    🚇
    techknowlogick
    techknowlogick

    💻
    waja
    waja

    📖
    Scott Albertson
    Scott Albertson

    📖
    Jason Huddleston
    Jason Huddleston

    📖
    Napster
    Napster

    💻
    Maxim
    Maxim

    💻 📖
    Max Schmitt
    Max Schmitt

    📖
    cron410
    cron410

    📖
    Paulo Henrique
    Paulo Henrique

    📖
    Kaleb Elwert
    Kaleb Elwert

    📖
    Bill Butler
    Bill Butler

    📖
    Mario Tacke
    Mario Tacke

    💻
    Mark Woodbridge
    Mark Woodbridge

    💻
    Ansem93
    Ansem93

    📖
    Luka Peschke
    Luka Peschke

    💻 📖
    Zois Pagoulatos
    Zois Pagoulatos

    💻 👀 🚧
    Alexandre Menif
    Alexandre Menif

    💻
    Andrey
    Andrey

    📖
    Armando Lüscher
    Armando Lüscher

    📖
    Ryan Budke
    Ryan Budke

    📖
    Kaloyan Raev
    Kaloyan Raev

    💻 ⚠️
    sixth
    sixth

    📖
    Gina Häußge
    Gina Häußge

    💻
    Max H.
    Max H.

    💻
    Jungkook Park
    Jungkook Park

    📖
    Jan Kristof Nidzwetzki
    Jan Kristof Nidzwetzki

    📖
    lukas
    lukas

    💻
    Ameya Shenoy
    Ameya Shenoy

    💻
    Raymon de Looff
    Raymon de Looff

    💻
    John Clayton
    John Clayton

    💻
    Germs2004
    Germs2004

    📖
    Lukas Willburger
    Lukas Willburger

    💻
    Oliver Cervera
    Oliver Cervera

    📖
    Victor Moura
    Victor Moura

    ⚠️ 💻 📖
    Maximilian Brandau
    Maximilian Brandau

    💻 ⚠️
    Andrew
    Andrew

    📖
    sixcorners
    sixcorners

    📖
    Arne Jørgensen
    Arne Jørgensen

    ⚠️ 👀
    PatSki123
    PatSki123

    📖
    Valentine Zavadsky
    Valentine Zavadsky

    💻 📖 ⚠️
    Alexander Voronin
    Alexander Voronin

    💻 🐛
    Oliver Mueller
    Oliver Mueller

    📖
    Sebastiaan Tammer
    Sebastiaan Tammer

    💻
    miosame
    miosame

    📖
    Andrew Metzger
    Andrew Metzger

    🐛 💡
    Pierre Grimaud
    Pierre Grimaud

    📖
    Matt Doran
    Matt Doran

    📖
    MihailITPlace
    MihailITPlace

    💻
    bugficks
    bugficks

    💻 📖
    Michael
    Michael

    💻
    D. Domig
    D. Domig

    📖
    Ben Osheroff
    Ben Osheroff

    💻
    David H.
    David H.

    💻
    Chander Ganesan
    Chander Ganesan

    📖
    yrien30
    yrien30

    💻
    ksurl
    ksurl

    📖 💻 🚇
    rg9400
    rg9400

    💻
    Turtle Kalus
    Turtle Kalus

    💻
    Srihari Thalla
    Srihari Thalla

    📖
    Thomas Gaudin
    Thomas Gaudin

    📖
    hydrargyrum
    hydrargyrum

    📖
    Reinout van Rees
    Reinout van Rees

    📖
    DasSkelett
    DasSkelett

    💻
    zenjabba
    zenjabba

    📖
    Dan Quan
    Dan Quan

    📖
    modem7
    modem7

    📖
    Igor Zibarev
    Igor Zibarev

    💻
    Patrice
    Patrice

    💻
    James White
    James White

    📖
    Dirk Kok
    Dirk Kok

    💻
    EDIflyer
    EDIflyer

    📖
    Jauder Ho
    Jauder Ho

    💻
    Tamal Das
    Tamal Das

    📖
    guangwu
    guangwu

    📖
    Florian Hübner
    Florian Hübner

    📖 💻

    Andrii Bratanin

    📖

    This project follows the all-contributors specification. Contributions of any kind welcome!

    Discover Repositories

    Search across tracked repositories by name or description