VLClean Plain comparisons of self-hosted media tools

How to deploy a tracker in a container for sqlite and docker trackers in 2026

See how to deploy a tracker in a container, keep a sqlite database file safe across container updates, and check which options match the setup.

By VLClean ยท

VLClean is published by the makers of Askarr and Watcharr, which are compared here alongside other tools.

A tracker can be deployed in a container by preparing the container host, mounting a host folder for the sqlite database file, running the image the project publishes, and checking the startup result before the tracker is used.

OptionHow it runsCost details
Image from the tracker projectRuns as a container on the host, with the sqlite database file kept in a mounted host folder.not published
Image built from sourceBuilt into an image on the host and run the same way, using the project's build instructions.not published
WatcharrRuns on Cloudflare, a company that hosts web apps and databases, with a Cloudflare database, plus a GitHub job, where GitHub is a code hosting service, that reads IMDb. [1]not published
Managed host outside a containerRuns on a hosted service, so no container is managed on the home host.not published

What you need before you start

Deploying a tracker in a container starts with a host that can run containers. Docker is the container runtime many self-hosters already have, and it starts an application in an isolated package that can be replaced or upgraded without changing the rest of the host. The tracker itself needs a container image, either published by its project or built from its source code.

sqlite keeps the entire database in a single file on the host, and that file is the part to plan around. Give it a folder on the host, mounted into the container, so the data stays in place when the container is replaced. Decide the port the tracker listens on, and whether the tracker should start again by itself after the host reboots.

Check what else the tracker expects, such as settings it reads at startup, and decide who will use it once it is running. Plan backups for the database file as well, because a container can be removed at any moment and the file outside it is what survives.

Step by step

  1. Install a container runtime such as Docker on the host, and start a small throwaway container once to confirm the runtime works before touching the tracker.
  1. Choose the tracker image. If the project publishes one, note the exact image name and version tag its documentation gives. If it publishes no image, build one from the source using the project's own build instructions.
  1. Create a folder on the host for the sqlite database file, and mount that folder into the container at the path the project documents. Keeping the file on the host means the database survives every container replacement.
  1. Write the run command or compose file with the database mount, the port the tracker listens on, and a restart policy so the tracker comes back after the host reboots.
  1. Start the container and read the startup output. A tracker that starts cleanly reports its port and prints no repeated error lines; fix anything wrong before moving on.
  1. Open the tracker from a browser on another device to confirm it answers on the chosen port, then close any port that should not be reachable from outside the home network.
  1. Back up the sqlite file on a fixed day each week, and test that a backup can be restored into a fresh container, because a backup that has never been restored is only a hope.
  1. Note the image tag in use, and when an update is wanted, pull the new tag, stop the old container, and start the new one against the same mounted folder.

Tools that can do it

Watcharr runs on Cloudflare, a company that hosts web apps and databases, with a Cloudflare database, plus a GitHub job, where GitHub is a code hosting service, that reads IMDb. [1] Its code is available to read under the PolyForm Noncommercial 1.0.0 licence, and older versions remain under MIT. [1] Commercial use is not licensed, and no commercial licence is for sale. [1] The hosted version needs nothing to install and no account. [1] Those claims describe a Cloudflare deployment and say nothing about running Watcharr in a container on your own host, so anyone who needs a container on their own host should check with the project how Watcharr is meant to be run before choosing it.

An image from the tracker's project. The image a project publishes for its own tracker is the option the steps above assume. Check that the project still maintains the image, that its documentation states where the sqlite file belongs, and which version tags it offers.

An image built from source. Source code can be built into an image on the host with the build instructions in the project's repository, and the result is run exactly like a published image.

A managed host outside a container. A hosted service runs the tracker, so no container is managed on the home host. No source facts name a hosted service for trackers here, so check what a provider actually runs, where its database lives, and how backups work before relying on it.

Before choosing a tool, check how it stores its database, how it is updated, and what its licence allows for the way it will be used.

Common mistakes to avoid

Avoid keeping the sqlite database file inside the container without a mount. When the container is replaced, the file goes with it, and the tracker starts again with an empty database.

Avoid running the tracker without a restart policy. A host that reboots leaves the tracker offline until someone notices and starts it again.

Avoid skipping backups of the database file. The file holds the entire database, so a copy taken regularly is the only way to restore after a problem.

Avoid editing the database file while the tracker is running, because two programs writing to the same sqlite file at once can damage it. Stop the container first.

Avoid sharing the tracker more widely than planned before checking what its licence allows. Some projects license their code for noncommercial use only, so read the licence before any use beyond a household.

Frequently asked questions

How can a tracker be deployed in a container?

Prepare a host that runs containers, pick the image the tracker's project publishes or build one from its source, and mount a folder on the host at the path where the container expects the sqlite database file. Start the container with the port and restart settings the project documents, then read the startup output for errors. Keep a backup of the database file so a fresh container can be restored from it.

Does Watcharr run in a Docker container?

Watcharr runs on Cloudflare, a company that hosts web apps and databases, with a Cloudflare database, plus a GitHub job, where GitHub is a code hosting service, that reads IMDb. [1] The published claims describe a Cloudflare deployment and do not mention a container, so a reader whose job is a container deployment should check with the project how Watcharr is meant to be run before choosing it for that job.

Can Watcharr be used for commercial projects?

Commercial use of Watcharr is not licensed, and no commercial licence is for sale. [1] Its code is available to read under the PolyForm Noncommercial 1.0.0 licence, and older versions remain under MIT. [1] Anyone planning use beyond a household should treat those licence terms as the deciding detail and read the licence text itself before deploying anything.

How does the hosted Watcharr version work?

The hosted version needs nothing to install and no account. [1] You paste one public IMDb list and get one link for Radarr with the movies and one for Sonarr with the shows. [1] Each link acts like a small Radarr or Sonarr server, so Radarr checks it every 15 minutes and Sonarr every 5. [1]

What should be checked before choosing a tracker to deploy in a container?

Check whether the project publishes a container image and which version tags it maintains, where the image expects the sqlite database file, and how backups are meant to be taken. Check the licence for the intended use, because some licences cover noncommercial use only. Watcharr's code carries the PolyForm Noncommercial 1.0.0 licence. [1] Commercial use of it is not licensed. [1]

Its code is available to read under the PolyForm Noncommercial 1.0.0 licence; older versions remain under MIT. [1]

Try Watcharr

Sources

  1. Watcharr's own description of itself (the product of this site's publisher)

Related comparisons