Treat a fresh Plex instance after stack recreation as a mount or permission failure until you prove the old persistent data is actually gone.
Recreating a Docker or Compose stack replaces containers and can also change which host path, named volume, user identity, or storage pool backs `/config`. Plex then opens against an empty or unreadable directory and looks newly installed even though the original database may still exist. Stop the new instance, find the old appdata, compare effective mounts and numeric ownership, and only restore from backup if that state is truly missing.
Stop When Plex Looks Like a Fresh Server
A fresh setup wizard after stack recreation is a persistence warning, not an invitation to rebuild the library. Stop the container and inspect the data mapping before Plex writes more state. The most common failure is that the new container is reading an empty host path instead of the previous application-data directory.
A recreated container can present a fresh setup when the expected persistent config mapping no longer points to the original appdata. The first discriminator is whether the old state still exists on the host.
Locate the previous Plex data directory and verify its modification times, database files, and metadata folders. If those are present, do not delete them or initialize a new server. Your recovery target is the mount path and permissions, not the media library.
Compare the Old and New /config Mapping Exactly
Stack recreation can change a relative bind mount, named volume, environment substitution, storage pool, or compose working directory without changing the visible container path. Plex may still see `/config`, but that path can now point to a different host location.
A Plex container setup is safest when config lives outside the container. Compare the effective mounts from the old deployment record or backup with the recreated stack rather than trusting a visually similar compose file.
Mount the known old appdata read-only into a temporary diagnostic container or inspect it directly on the host. If the expected database and preferences are there, correct the production mapping and restart Plex once. If the directory is actually missing, move to backup recovery instead.
Verify Ownership Before Blaming the Database
A correct host path can still be unusable if the recreated container runs under a different UID, GID, user namespace, or security context. Plex then appears unable to save preferences, open database files, or create directories even though the data is mounted in the right place.
When Plex cannot create or update appdata, config-directory permissions should be checked numerically instead of โfixedโ with a blind recursive `777`.
Run an identity check inside the container and compare it with the numeric owner and mode on the host. Apply the smallest ownership or ACL correction that gives the intended service account access. Then start Plex and confirm it opens the existing server rather than a new setup.
If numeric ownership matches but access still fails, inspect ACLs, container security labels, and user-namespace behavior before changing the database. A correct UID/GID does not override a separate access-control layer.
Check Media Mounts Only After Application State Returns
Once the old server identity and libraries reappear, some libraries may still look unavailable because media mounts changed independently from `/config`. That is a separate persistence role. Fix the media path without recreating the library or copying media into the application-data directory.
Keep application state and media mounts as separate persistence roles. That separation lets you restore Plex identity first and troubleshoot missing media paths only after the original libraries reappear.
Open several known media paths from inside the Plex container. If the old database points to `/media/movies` but the recreated stack exposes `/movies`, restore the expected internal path or plan a controlled library path migration. Do not rescan until the mount is stable.
Restore From Backup Only When the Original State Is Truly Gone
If the old host directory is empty, deleted, or corrupted beyond use, restore the most recent known-good Plex appdata backup into a clean, correctly mapped path. Preserve the failed state separately so you can still inspect what happened rather than overwriting the only evidence.
A reliable container recovery workflow protects persistent `/config`, replaces only the disposable application layer, and verifies mounts before Plex is allowed to write again.
After restoration, confirm server identity, library counts, watch state, a local playback, a transcode if used, and one restart. Then capture the effective stack configuration and backup location. The incident is closed only when another recreation points to the same persistent data without manual guesswork.
Support & Tips
More to Read

Can Plex Share a GPU With Another Docker Container?
Plex and another container can often access the same GPU, but you must test driver support, device mapping, video-engine load, memory, and recovery behavior.

How to Tell Whether a Plex Error Comes From the Client or Server
Reproduce the same item on another client, compare the session path, then collect server evidence only after scope tells you where the failure actually...

How to Configure Plex Cache and Transcode Temporary Storage
Protect persistent Plex state while placing transcode temp files on suitable local storage, then verify cleanup, free space, and restart behavior.

