Repolode
Quenary

Quenary/tugtainer

A self-hosted Docker app with a web UI that checks for and applies updates to your containers on a schedule or manually.

Open-source alternative to:Watchtower

Stars
1,549
Forks
57
Open issues
1
Last commit
7 days ago

What is it?

Tugtainer watches the images used by your Docker containers, reports when newer versions are available, and can apply updates automatically or on demand. Automatic updates are off by default, and each container can be set to check only or to update automatically.

The web UI supports multiple hosts through a companion agent, Docker Swarm (manager detection, service checks, rolling updates and logs), crontab scheduling, and notifications to a range of services. It also offers basic container control, inspection and logs, automatic or manual image pruning, and healthcheck monitoring with auto-restarts. Private registries and custom labels are supported.

It can connect to Docker through a socket proxy instead of mounting the Docker socket directly. The app and agent are deployed as containers, with a one-time setup code printed to the logs on first start and a shared AGENT_SECRET for backend-agent communication.

Key features

  • 01Scheduled or manual update checks and container updates
  • 02Per-container setting to check only or auto-update
  • 03Multi-host management via an agent, including Docker Swarm
  • 04Notifications to a range of services
  • 05Healthcheck monitoring with automatic restarts
  • 06Socket proxy support and private registry support

Use cases

  • Keeping self-hosted containers in a homelab up to date without manual pulls
  • Managing container updates across several Docker hosts from one dashboard
  • Getting update notifications for containers you prefer to update by hand

Quick start

  1. 1

    Create the data volume

    docker volume create tugtainer_data
  2. 2

    Pull the image

    docker pull ghcr.io/quenary/tugtainer:1
  3. 3

    Run the container with a strong AGENT_SECRET set (fill in the value in the README command)

    docker run -d -p 9412:80 --name=tugtainer --restart=unless-stopped -e AGENT_SECRET="" -v tugtainer_data:/tugtainer -v /var/run/docker.sock:/var/run/docker.sock:ro ghcr.io/quenary/tugtainer:1
  4. 4

    Copy the one-time setup code from docker logs tugtainer and set a password within 5 minutes

Things to know

  • The README says the app is distributed as-is and is not recommended for production use.
  • Agent and socket-proxy containers cannot be updated from within the app.
  • Agent host URLs on private networks are blocked by default and need explicit allow settings.

In collections

Topics

#docker#auto-update#self-hosted#container-management#homelab#web-ui#devops#angular#container-monitoring#container-update

FAQ

What is tugtainer?
A self-hosted Docker app with a web UI that checks for and applies updates to your containers on a schedule or manually. Tugtainer watches the images used by your Docker containers, reports when newer versions are available, and can apply updates automatically or on demand. Automatic updates are off by default, and each container can be set to check only or to update automatically.
Is tugtainer free to use? What license does it have?
tugtainer is open source under the MIT license. Check the license terms before using it in commercial products.
Is tugtainer still maintained?
Actively maintained. The last commit to tugtainer was on Oct 30, 2026.
What can I use tugtainer for?
Keeping self-hosted containers in a homelab up to date without manual pulls Managing container updates across several Docker hosts from one dashboard Getting update notifications for containers you prefer to update by hand
How do I install tugtainer?
Create the data volume: docker volume create tugtainer_data Pull the image: docker pull ghcr.io/quenary/tugtainer:1 Run the container with a strong AGENT_SECRET set (fill in the value in the README command): docker run -d -p 9412:80 --name=tugtainer --restart=unless-stopped -e AGENT_SECRET="" -v tugtainer_data:/tugtainer -v /var/run/docker.sock:/var/run/docker.sock:ro ghcr.io/quenary/tugtainer:1 Copy the one-time setup code from docker logs tugtainer and set a password within 5 minutes
Where can I get tugtainer?
The source code and installation instructions are on GitHub: https://github.com/Quenary/tugtainer

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects