Watchtower

Automatically update containerized app

About: https://github.com/containrrr/watchtower

In this tutorial, i will show you how to install Watchtower using Docker Manager on your TerraMaster NAS.

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.

Watchtower is intended to be used in homelabs, media centers, local dev environments, and similar. It is not recommend using Watchtower in a commercial or production environment. 

Download from above the watchtower.yml file and save it locally on your computer.

If you already have Docker Engine and Docker Manager apps installed, proceed to next step.
If not, follow this guide to install them: How to install Docker Engine and Docker Manager.

If you already have these 2 shared folders, proceed to next step.
If not, follow this guide to create the folders: How to create DockerYAML and DockerAppsData shared folders

For TOS5 and TOS6, we are going to run these containers as the superuser account (the account that was created during initial NAS setup).
For TOS4, we are going to run these containers as the root account.

If you already know your username id and group id from a previous container deployment, proceed to next step.

If not, for TOS6, the username id and group id for the superuser account should be both 0.

You can double check this by by running a command in terminal.
You can simple install the ttyd app and find your uid and gid following this guide: How to install and use ttyd app (share your terminal over web).

You can also use putty or any other SSH client and type id command. In this case, ssh service must run on your NAS.
For TOS6, you can use the builtin terminal app How to use in built Terminal on TOS6

Find your current time zone on this website, as example for Brussels is:

TZ=Europe/Brussels

Open Docker Manager by using the icon on the desktop or from the top menu.
Click on Project from the left menu and then on the small + icon to add new project.

  • On the Project name type watchtower
  • On the Project path type /Volume1/DockerYAML or use the Browse button to navigate and select the DockerYAML folder
  • Configuration file source select Your computer from the dropdown list
  • Click on the folder icon to browse your local computer for the yml file

On the file browser window, choose the watchtower.yml file that you downloaded on Step 1.
After you select the file, click on Open.

The file will be loaded and the content will appear on the code section.
Before you proceed further, adapt the code to your particular values for these variables:

  • PUID and PGID change to the values for your user found on Step 3.
  • TZ change to the value for your specific zone found on Step 4.
  • WATCHTOWER_DISABLE_CONTAINERS enable this line to exclude some containers from being monitorized. Specify the name as attribute value

Scroll down in the code window to review the config.

After you adapt all the required values, click on Verify YAML button. If the code is OK, the Apply button will become available.
Click on it to deploy the project.

The project will start building.

If the building went well, our project will show the status as Running.

When the project is selected, the buttons on top will be available from where you can stop/start the project, restart, delete or force stop.

Now go to Containers section were you can see some info about the newly created container.
The status should be In operation

To see watchtower actions, open the log file.

It seems that the interface is not showing the complete info, is best to download the file on you computer to see the complete info

outkastm

Share
Published by
outkastm

Recent Posts

Seafile

A new way to organize your files About: https://www.seafile.com/en/home In this tutorial, i will show…

1 month ago

Wizarr

Automatic user invitation and management system for Plex, Jellyfin, Emby, Audiobookshelf, Romm, Komga and Kavita.…

1 month ago

VueTorrent

The sleekest looking WebUI for qBittorrent About : https://github.com/VueTorrent/VueTorrent Applicable models: x.64 series, ARMv8 series, ARMv8.2 seriesApplicable TOS6: 6.0.420…

2 months ago

Nginx Proxy Manager

Expose your services easily and securely About: https://nginxproxymanager.com In this tutorial, i will show you…

2 months ago

Vaultwarden

Unofficial Bitwarden compatible server About : https://github.com/dani-garcia/vaultwarden Applicable models: x.64 seriesApplicable TOS6: 6.0.420 or later versions Required packages: Caddy App…

2 months ago

Caddy

The ultimate web server About : https://caddyserver.com/ Applicable models: x.64 series, ARMv8 series, ARMv8.2 seriesApplicable TOS6: 6.0.420 or later…

4 months ago