Tool Spotlight: Watchtower

Watchtower helps you use the most recent Docker images.

What is it for?

Basically, an automated way to do very simple continuous deployment.

Watchtower repeatedly asks the Docker registry whether one more more Docker tags point to a new image. If a newer image exists, Watchtower pulls it and restarts the corresponding containers.

You can use it for all containers on a machine, or only for some of them.

You might be interested if…

You are running a containerized non-production environment which you want to keep updated.

Sometimes there’s a new image version with the same image name and tag.

Usually you’d need to remove the old image, pull the new one and restart the containers by hand.

Instead, you’d like that to happen automatically. A slight delay is okay. You don’t mind automatic unattended updates, and nobody will mind an accidental downtime.

What you need to know

It’s …

  • Free.
  • Open source.
  • Very simple to setup.
  • Able to keep itself updated.

You can …

  • Run it in a Docker container.
  • Make sure oyur containers use new images.
  • Run it for all containers on the machine or limit it to a few container names.
  • Specify the interval at which Watchtower checks for image changes.
  • Label single containers to exclude them from what Watchtowers does.
  • Send out email and Slack notifications when there’re updates.

Take a look

The GitHub project README goes into more details.

Try it

Simply run it on your local machine, and give it a spin. I wouldn’t suggest to use it in an important production environment, but it’s fine for a simple testing setup.

An alternative

Creating an automated deployment script for your containerized application is somewhat similar, but not quite. You’d need to trigger it somehow, or run it manually.

If you’re only working with images which you’re building yourself, you could create a deployment pipeline, which takes care of redeploying your application after pushing a new image to the repository.

Join the mailing list!

Subscribe to get notified about future articles and stay in touch via email.

I write about Kubernetes, Docker, automation- and deployment topics, but would also like to keep you up to date about news around the business-side of things.

Privacy and your data: You can get more information about the usage of your data, the storage of your registration, sending out mails with the US-provider ConvertKit, statistical analysis of emails sent and your possibility to unsubscribe in my Privacy Policy.

I use the US-provider ConvertKit for email automation. By clicking to submit this form, you acknowledge that the information you provide will be transferred to ConvertKit for processing in accordance with their Privacy Policy and Terms.

We won't send you spam. Unsubscribe at any time. Powered by ConvertKit