Riven uses RivenVFS — a FUSE-based virtual filesystem — to expose your debrid media as a regular directory tree. Plex reads from this mount just like any other media folder, while Riven’s updater service keeps Plex’s library in sync whenever items are added or completed. Getting this working reliably requires exact library names, correct Docker volume propagation flags, and a shared bind mount on the host.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/rivenmedia/riven/llms.txt
Use this file to discover all available pages before exploring further.
Prerequisites
- Riven and its PostgreSQL database are running (see the installation guide).
- You have chosen a host path for the RivenVFS mount (referred to below as
/path/to/riven/mount). - Plex Media Server is running in Docker (or directly on the host).
Required Plex Library Sections
Riven’s updater locates your Plex libraries by their exact section names. You must create all four sections before enabling the updater:| Media type | Required section name |
|---|---|
| Movies | movies |
| Movies | anime_movies |
| Shows | shows |
| Shows | anime_shows |
These names are currently mandatory and case-sensitive. Support for custom library names is planned for a future release.
Docker Volume Setup
1. Prepare the host bind mount
The host directory must be a shared bind mount so that FUSE mounts created inside the Riven container propagate out to other containers. Run the following commands once per boot (or automate them — see below):Make it permanent
- systemd unit
- fstab entry
Create Then enable it:
/etc/systemd/system/riven-bind-shared.service:2. Configure Docker volumes
In yourdocker-compose.yml, the Riven container uses rshared,z (it creates the FUSE mount and must propagate it outward), while consumer containers like Plex use rslave,z (they receive mount events but do not propagate them further):
Create the Plex Libraries
Open Plex Web and navigate to Libraries
Go to Settings → Libraries in Plex Web (or click the + icon next to Libraries in the left sidebar).
Add the Movies library
- Click Add Library and select Movies.
- Set the library name to exactly
movies(all lowercase). - Click Add folder and enter the path
/mount/movies. - Click Add Library.
Add the Anime Movies library
Repeat the process: type Movies, name it
anime_movies, and point it to /mount/anime_movies.Add the Shows library
Click Add Library, select TV Shows, name it
shows, and point it to /mount/shows.Configure the Plex Updater in Riven
Riven needs your Plex server URL and authentication token to trigger library scans after items are added.Updater settings
| Setting | Description | Default |
|---|---|---|
updaters.plex.enabled | Enable the Plex updater | false |
updaters.plex.url | URL to your Plex server | http://localhost:32400 |
updaters.plex.token | Your Plex authentication token (X-Plex-Token) | "" |
updaters.updater_interval | Seconds between library update cycles | 120 |
POST /api/v1/settings/set/all with the full settings object.
Get your Plex token
Sign in to Plex Web
Go to app.plex.tv and sign in with your Plex account.
Open any media item's XML
Navigate to a movie or show in your library, click the ⋮ menu, choose Get Info, then click View XML. The URL that opens will contain
X-Plex-Token=XXXXXXXXXXXXXXXX.Troubleshooting: Plex Shows Empty /mount After Restart
If Plex’s library folders appear empty after restarting Riven or RivenVFS, the problem is almost always mount propagation. Work through these steps without restarting Plex.Verify the host path is shared
Check that your host mount directory has If it shows
shared or rshared propagation:private, re-run the bind mount commands from the Docker volume setup section above.Verify propagation inside the Plex container
Check that the Plex container is receiving mount events and that the FUSE mount is visible:
PROPAGATION should be rslave or rshared, and FSTYPE should show fuse when RivenVFS is active. If FSTYPE shows ext4 or similar, the FUSE mount has not propagated — confirm the Plex volume uses :rslave,z.Re-trigger the VFS mount
Restart the Riven container to remount RivenVFS. With correct propagation on both sides (host
rshared, Plex container rslave), Plex should see the content return automatically without needing a Plex restart.In Riven settings,
filesystem.mount_path must be set to the container path (typically /mount), not the host path. Both Riven and Plex refer to the same in-container path for their libraries (e.g., /mount/movies).