How to Prevent Plex Configuration Loss During Container Upgrades

Eva Wong is the Technical Writer and resident tinkerer at ZimaSpace. A lifelong geek with a passion for homelabs and open-source software, she specializes in translating complex technical concepts into accessible, hands-on guides. Eva believes that self-hosting should be fun, not intimidating. Through her tutorials, she empowers the community to demystify hardware setups, from building their first NAS to mastering Docker containers.

Prevent Plex configuration loss by protecting the persistent app data before an upgrade and changing only the replaceable container layer.

On a home server, the risky moment is not the image pull itself but recreating Plex with the wrong config path, an untested backup, or no usable rollback reference. Start by proving which persistent directory the current server actually uses, then protect that state before any destructive change. If the upgraded container returns as a fresh server, stop there and verify the mapping instead of rebuilding settings on top of the wrong state.

Separate Plex Configuration From the Disposable Container

A container image is meant to be replaceable, while the Plex state you care about must survive that replacement. Treat the running container as the application layer and its persistent app data as a separate recovery object. If those two layers are not separated, an ordinary upgrade can become an accidental reset.

The persistent side is more than your movie and TV folders. Plex relies on its data directory and server settings to retain library structure, metadata, preferences, and other server state, while the media files themselves can remain untouched on separate storage. Protecting only the media therefore does not protect the Plex configuration you would need to bring the same server back.

Before planning the upgrade, identify the host directory or named volume that carries this persistent state. In many container setups it is presented inside Plex as a configuration mount such as /config, but the host-side location is what matters for recovery. If you cannot point to that source confidently, treat the upgrade as blocked until you can.

Verify the Current Config Path Before You Upgrade

The first check should be observational, not destructive. Open the container definition, Compose file, NAS app settings, or container-management UI and compare the active configuration mount with the host location you believe contains Plex state. Do this while the known-good server is still running so you have a reliable reference.

A correct mapping should lead to the populated app-data location the current server is already using. A Plex Docker deployment should keep its application state on persistent volumes for Plex so that the data survives container restarts and upgrades. When the container is redeployed, reuse the verified host-side configuration source instead of pointing Plex at an empty or newly created directory.

If the mapping is wrong, ambiguous, or points to a location Plex cannot use, stop before pulling or recreating anything. Correct the path or access problem while the old container is still available, then reopen Plex and confirm it still shows the expected server. That confirmation turns the mapping from an assumption into a verified baseline.

Capture the mapping in a screenshot, exported app template, or saved Compose file. The goal is not documentation for its own sake; it is to remove memory from the recovery process. After an upgrade, you should be able to compare the new container definition with the known-working one without guessing which host path or permission setting changed.

Create a Recoverable Backup Before the Image Changes

Once the active config path is verified, copy that persistent Plex state to a separate recovery location before the image changes. The backup can be an archive, snapshot plus independent copy, or another method your NAS already supports, but it needs to represent the known-working server rather than a directory you merely hope is correct.

Be careful with live database files. If the backup method simply copies Plex app data while its database is changing, stop or quiesce the Plex container first unless the tool provides an application-consistent snapshot or database-aware method. A fast copy that captures an inconsistent database is not a safer backup just because the archive completed without an obvious error.

After the copy finishes, inspect it independently of the live directory. Confirm that it contains recognizable Plex app-data structure, note its timestamp and size, and test that the archive can be opened or extracted to a temporary location. If the backup cannot be read cleanly, fix the backup process before touching the working container.

Keep the pre-upgrade copy separate from the live app-data path. A backup sitting inside the same directory tree you are about to remap or clean up can disappear with the source it was meant to protect. The immediate goal is recoverability from an upgrade mistake; broader disk-failure protection can follow your normal NAS backup policy.

-15% OFF
Single board computer zimaboard2

Save the Container Definition and Last Working Image Reference

Configuration data is only one half of a useful rollback. Also preserve the current container definition: image reference, volume mappings, relevant environment values, network mode, device mappings, and any other setting that would be hard to reconstruct from memory. A Compose file or exported NAS app template is easier to trust than a handwritten reconstruction after something fails.

Record the last working image with a versioned tag, digest, or another resolvable reference before relying on a floating tag such as latest. A rollback is much harder when you know that yesterday worked but cannot identify which image yesterday actually used. Preserving app data, the container definition, and a specific image reference turns the current setup into a reproducible recovery point.

Do not prune the previous image or delete the saved deployment definition before the upgrade has been verified. If the new container fails for reasons unrelated to the config path, you want to be able to recreate the previous runtime without changing the protected app data. That keeps rollback focused on the software layer instead of mixing recovery with a new configuration migration.

Upgrade Without Changing the Persistent State Boundary

With the backup and rollback context ready, replace or update the Plex image while keeping the verified persistent configuration mapping unchanged. Reusing the same persistent volume while replacing the container image is what keeps application data outside the disposable container layer. Keep media paths and other known-good mounts stable as well unless the purpose of the maintenance is explicitly to migrate them.

The expected result is simple: the upgraded container starts against the same persistent /config state and Plex returns as the existing server. If the mapping is preserved, the new container can reuse the stored library database, settings, and metadata instead of treating the deployment like a first installation. This is the state you should see before making any new configuration changes.

If Plex instead presents a fresh setup, empty library, or claim flow, do not start rebuilding the server immediately. Stop the new container and compare its configuration mapping with the known-working definition. A fresh-looking server after a container replacement is a reason to verify persistence first, because configuring the wrong state can make the recovery path less clear.

If the mapping is correct but the new image still fails, use the saved image reference and deployment definition to return to the last working container while leaving the protected app data in place. If the app data itself appears damaged, restore from the pre-upgrade copy rather than experimenting on your only known-good backup.

Verify the Upgraded Server Before You Remove the Rollback Copy

A container that starts is not yet a verified upgrade. Compare the upgraded server with the baseline you recorded before maintenance: confirm the expected server identity, libraries, important settings, media paths, and at least one representative playback session. If one of those checks differs, investigate before deleting recovery assets.

Keep the pre-upgrade app-data backup and last working image reference until you have proved that recovery is possible, not merely that the new version launches. A restore test helps prove that the backup can become a usable recovery path, even if the test is limited to extracting the archive or restoring a copy to a temporary location without disturbing production.

Once the upgraded server matches the baseline and the recovery package remains usable, you can treat the maintenance window as complete. Retain or rotate the backup according to your normal policy rather than deleting it immediately just because the upgrade worked once. That leaves room for problems that only appear after scheduled tasks, library scans, or normal household use resume.

Use the same protection trigger for future changes that can replace or reinterpret Plex state: a container image upgrade, migration to another host, config-path move, major permission change, or app-data storage change. Recheck the persistent mapping, create a fresh recovery point, preserve rollback context, and verify the result before cleanup. The routine is tied to disruptive change, not to an arbitrary calendar interval.

Support & Tips

More to Read

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.