Monitor media servers with Tracearr 🔎¶
Tracearr is Plundarr's preferred media monitor and a removable default. It connects to Plex, Jellyfin, or Emby over the network; the media server can run in another project or on another host. Duplex focuses on Kometa and ImageMaid, with removable PATTRMM and Notifiarr defaults and an opt-in Overlay Reset tool. Tautulli remains an optional Plex monitor in every preset.
Select monitoring services¶
A fresh Plundarr generation includes Tracearr:
For an existing project, select Tracearr in make configure or explicitly include it while generating. The single tracearr selection includes the application, TimescaleDB, and Redis together; its internal containers are not separate choices:
To omit it from Plundarr or select Tautulli instead:
make ship PRESET=plundarr REMOVE_SERVICES=tracearr
make ship PRESET=plundarr REMOVE_SERVICES=tracearr ADD_SERVICES=tautulli
Both monitors may run together. Regeneration preserves existing application configuration and previously configured environment values, including values belonging to temporarily unselected services. Keep your complete service selection when regenerating a project.
Configure and launch¶
Edit the generated dist/<preset>/.env. The standard deployment follows Tracearr's Docker Compose installation with three containers and supports linux/amd64 and linux/arm64. It does not support linux/arm/v7.
| Setting | Default | Purpose |
|---|---|---|
TRACEARR_TAG |
latest |
Official stable application image channel |
TRACEARR_WEBUI_PORT |
3080 in Plundarr |
Host web port; other presets may offset it |
TRACEARR_NODE_ENV |
production |
Node.js runtime mode |
TRACEARR_HOST |
0.0.0.0 |
Container listen address |
TRACEARR_PORT |
3000 |
Internal web port shared by the service, healthcheck, and Homepage |
TRACEARR_DB_USER / TRACEARR_DB_NAME |
tracearr |
PostgreSQL account and database name |
TRACEARR_DATABASE_URL |
Derived from database settings | Application PostgreSQL connection URI |
TRACEARR_REDIS_URL |
redis://tracearr-redis:6379 |
Application Redis connection URI |
TRACEARR_DB_TAG |
pg18 |
TimescaleDB HA channel tracking PostgreSQL 18 patch and TimescaleDB releases |
TRACEARR_DB_SHM_SIZE |
512mb |
Database shared-memory allocation |
TRACEARR_DB_NOFILE_SOFT / TRACEARR_DB_NOFILE_HARD |
65536 |
Database open-file limits; soft must not exceed hard |
TRACEARR_REDIS_TAG |
8-alpine |
Redis image channel |
TRACEARR_LOG_LEVEL |
info |
Application logging verbosity |
TRACEARR_TRUST_PROXY |
false |
Enable only behind a trusted reverse proxy |
Maraudarr generates separate random values for TRACEARR_DB_PASSWORD, TRACEARR_JWT_SECRET, TRACEARR_COOKIE_SECRET, and TRACEARR_AUTH_SECRET in .env. It preserves those values on subsequent runs; example.env contains empty placeholders. Keep .env private and back it up securely alongside exported database backups. Changing the database password in .env does not change the password inside an initialized PostgreSQL database; coordinate credential changes with PostgreSQL.
Start the selected project:
Open http://YOUR-HOST:3080, using the actual generated host port, create the owner account, and connect your media server using Tracearr's setup flow. Supply a server address reachable from the Tracearr container; localhost refers to that container. No VPN dependency or media-library filesystem mount is required. PostgreSQL and Redis have no published host ports.
After changing .env, run make up PRESET=plundarr again to recreate affected containers. A plain container restart does not reload environment settings. Use the corresponding preset name throughout when deploying elsewhere.
Connect Homepage¶
When Homepage and Tracearr are selected together, Maraudarr seeds a native Tracearr widget. Set HOMEPAGE_VAR_TRACEARR_HREF to the browser-accessible URL and HOMEPAGE_VAR_TRACEARR_KEY to an API key created in Tracearr. The internal HOMEPAGE_VAR_TRACEARR_URL defaults to http://tracearr:3000, deriving its port from TRACEARR_PORT independently of the published host port. Recreate Homepage after editing .env.
Existing operator-edited Homepage files are preserved. Add the Tracearr widget to an existing config/homepage/services.yaml if it does not already contain the generated card. Tautulli's card remains available when Tautulli is selected.
Back up and update¶
Tracearr's database, Redis state, and backup workspace use project-scoped named Docker volumes. Docker manages their permissions; regeneration, make down, and make nuke preserve them.
Watchtower can update Tracearr automatically. Its database and Redis are excluded from Watchtower updates. make up still pulls all selected images, so it can update a floating database or Redis tag. Review upstream release notes and export a backup before updating; use an exact image tag in .env when you need a fixed version.
With Tracearr running, create and export a consistent application backup. These commands use the plundarr preset; substitute your deployment directory and preset when using another project.
- Create a backup and confirm the command reports success.
docker compose --project-directory dist/plundarr exec -T tracearr node apps/server/scripts/backup.ts
- Copy the backup files from the application volume into the host config tree.
mkdir -p dist/plundarr/config/tracearr/backups
docker compose --project-directory dist/plundarr cp tracearr:/data/backup/. dist/plundarr/config/tracearr/backups/
- Confirm the exported backup archive exists, then include it in the host config backup.
make backup archives the host config tree; it does not dump databases or copy named volumes. Duplicati likewise needs exported backup files in its configured source paths. Downloading a backup through Tracearr's web interface is another option. Use the application's backup and restore interface for restoration; do not copy live PostgreSQL data files.
Caution
make delete-config deletes the host config tree, including exported backups stored there. Keep a separate verified backup before using it. The database and internal backup volumes survive deployment cleanup, including make nuke.
Retain the matching .env and an off-host copy of exported backups. Your viewing history deserves a lifeboat.