UnJustice Posted September 11, 2024 Posted September 11, 2024 Support thread for Debrid Media Bridge (DMB) An "all-in-one (AIO)" solution to deploying Riven media manager. Utilizing Zurg, a specialized, specific rclone deployment to allow for on-demand streaming of media. Still in an early testing/beta/development stage. Features are actively being added on as Riven continues to be developed. DMB repo: https://github.com/I-am-PUID-0/DMB DMB Wiki: https://github.com/I-am-PUID-0/DMB/wiki DMB discord: https://discord.gg/8dqKUBtbp5 (this is where I can be contacted most easily if one desires) Parent projects: https://github.com/rivenmedia/riven https://github.com/debridmediamanager/zurg-testing https://github.com/rclone/rclone Quote
CrankyLabs Posted October 7, 2024 Posted October 7, 2024 Hello, thanks for creating this app. I have it partly working but I'm having a couple issues. The main issue is that symlinks aren't getting created. The second issue is that I get error "Cross-site POST form submissions are forbidden" when I try to save settings in the riven UI. I can see the folders get created in the riven folder but no files ever get created. I tried to turn on Repair Symlinks in the riven settings but I can't save settings. Requesting content works fine and Zurg appears to be working fine. I tried starting chrome with CORS turned off but it didn't help. Any ideas? Quote
UnJustice Posted October 7, 2024 Author Posted October 7, 2024 4 hours ago, CrankyLabs said: Hello, thanks for creating this app. I have it partly working but I'm having a couple issues. The main issue is that symlinks aren't getting created. The second issue is that I get error "Cross-site POST form submissions are forbidden" when I try to save settings in the riven UI. I can see the folders get created in the riven folder but no files ever get created. I tried to turn on Repair Symlinks in the riven settings but I can't save settings. Requesting content works fine and Zurg appears to be working fine. I tried starting chrome with CORS turned off but it didn't help. Any ideas? Hello, glad you decided to try out DMB. One small quibble first, and my intention isn't to be annoying, but rather to direct due credit where it belongs. I didn't create anything to do with DMB nor the underlying projects it uses like Riven, Zurg, etc. The only thing I created was the .xml file which is the basis for unRAID docker container templates. I-am-puid-0 (on GitHub, linked in the container description) created DMB. Again, I just don't want people even assuming I am attempting to take credit for work I didn't do. He is aware of this template's existence, I communicate with him somewhat frequently, and have made wording changes and other small edits at his request and will continue to do so for him or others that contribute to Riven, etc. Sorry for the long-winded sidetracking! Starting with this issue: "Cross-site POST form submissions are forbidden" Have you set an ORIGIN URL? Eg: http://192.168.1.40:3000 or http://10.0.1.40:3000 etc. If in Host network mode or the regular bridged network mode the IP should be the IP of your unRAID server. The port will be 3000 in host mode. You should be able to change the host port to something other than 3000 if using bridged network or a custom docker network. I haven't tested changing the host port, btw, but it shouldn't be an issue (shouldn't is key...) If you didn't already have your ORIGIN set, please try that. Otherwise, let me know and please post a screenshot of your template filled in (redact any sensitive information). If you're getting any error when the container runs provide the docker run output with the error, again redacting. Secondly, with symlinks, please ensure you are providing the *exact* paths you use in your DMB container to your Plex (or JF or Emby) container. Please provide a filled-in template and I can take a look and see if pathing might be the issue. Also post your paths from DMB that you have added to your Plex template. Just so I can see everything. Thank you. Quote
Espressomatic Posted October 7, 2024 Posted October 7, 2024 (edited) This is a comment on the original project, not this template. No one anywhere has posted/explained why anyone would want to run Riven with Plex. Lots of tutorials and info on how to install the various parts, but nothing to say why anyone should care. Nothing to advocate over Stremio, Syncler, etc. Solutions which are fool-proof and offer maintenance-free access to media without any kind of manual intervention on behalf of "requested" content. Edited October 7, 2024 by Espressomatic Quote
UnJustice Posted October 7, 2024 Author Posted October 7, 2024 9 minutes ago, Espressomatic said: This is a comment on the original project, not this template. No one anywhere has posted/explained why anyone would want to run Riven with Plex. Lots of tutorials and info on how to install the various parts, but nothing to say why anyone should care. Nothing to advocate over Stremio, Syncler, etc. Solutions which are fool-proof and offer maintenance-free access to media without any kind of manual intervention on behalf of "requested" content. Let me explain my reasons then. I can add this to my little description area as well for future usage. 1. At the time of my first usage of Plex-Debrid, created by itstoggled on GitHub, and later PD_Zurg, created by I-am-PUID-0, which combined Plex-Debrid (PD) with Zurg (a specialized rclone mount application), there was no way to use Stremio on iOS. There is still no flawless way to do so. I sought out the above projects and now DMB to fill that gap. 2. I prefer the aesthetics of Plex. I am also a holder of a "lifetime" Plex pass for about a decade now. You might say I'm sort of locked-in to Plex and Apple world, although I do own Android devices. Btw, I created the unRAID template for stremio-docker*. I am a fan of both Stremio and Plex. *(not the underlying project, to be ultra clear, I only wrote the .xml following the actual creator's docker-compose file. Their name is tsaridas on GitHub- unrelated tangent). 3. I believe it's much easier to share with this setup. However, admittedly, now with the above-mentioned stremio-docker project in existence (again, I also put the unRAID template for that up if people wanna check that out) one could also share their "streaming ability" (I am choosing my word carefully here. Hopefully you understand why) with others outside their physical home on their same public IP. Before this was also possible via Stremio, but you'd have to get people to use VPNs, and, yeah. With Plex it has always been easier to create, for free, full additional accounts, and share your home library, including your DMB (or Plex-Debrid before) libraries with friends/family. I think that about sums up my own reasons. If people like Stremio, or some other solution, and don't suffer any specific issues that I did, a big one being lack of full iOS support, although that has been somewhat relieved in the past ~year, then maybe DMB doesn't offer much to them. And that's ok. Quote
Espressomatic Posted October 7, 2024 Posted October 7, 2024 (edited) 29 minutes ago, UnJustice said: Btw, I created the unRAID template for stremio-docker Ah yes. We chatted this past weekend in your github where I got the docker working behind reverse proxy and https, streaming directly on iOS too. This house is also iOS-first and I've been running a Mac as my daily-driver for 20 years and Plex with lifetime for about 12. OK, so Riven is a new implementation of Plex Debrid more or less. The issue I had with the original is the requirement for pre-populating Plex with one item at a time. Over the past 5 years I've barely used Plex because I haven't been spending any time managing nor curating my local library. I prefer to just search live on a streaming service or multiple and play direct. Also not a big fan of Stremio here and the only reason I set it up was because you provided the really convenient docker, and to see if I could do something with it for iOS. Their own web-hosted solution didn't do much for iOS without linking an external player like VLC and that wasn't something other ppl in the family were going to manage. I'm also a big fan of being able to use Trakt to sync any number of client UIs, even from different projects, so no matter what I use to play some media, my play history, collection and watch lists are there. I've never been able to tie Trakt together with Plex very well and of course it's even worse for any official clients for Netflix et al. So even though I have subs to plenty of services, I often just do the streaming from an "off-brand" app like Syncler. or Stremio. Edited October 7, 2024 by Espressomatic Quote
UnJustice Posted October 7, 2024 Author Posted October 7, 2024 (edited) 1 hour ago, Espressomatic said: Ah yes. We chatted this past weekend in your github where I got the docker working behind reverse proxy and https, streaming directly on iOS too. This house is also iOS-first and I've been running a Mac as my daily-driver for 20 years and Plex with lifetime for about 12. OK, so Riven is a new implementation of Plex Debrid more or less. The issue I had with the original is the requirement for pre-populating Plex with one item at a time. Over the past 5 years I've barely used Plex because I haven't been spending any time managing nor curating my local library. I prefer to just search live on a streaming service or multiple and play direct. Also not a big fan of Stremio here and the only reason I set it up was because you provided the really convenient docker, and to see if I could do something with it for iOS. Their own web-hosted solution didn't do much for iOS without linking an external player like VLC and that wasn't something other ppl in the family were going to manage. I'm also a big fan of being able to use Trakt to sync any number of client UIs, even from different projects, so no matter what I use to play some media, my play history, collection and watch lists are there. I've never been able to tie Trakt together with Plex very well and of course it's even worse for any official clients for Netflix et al. So even though I have subs to plenty of services, I often just do the streaming from an "off-brand" app like Syncler. or Stremio. Ah, yes, I saw you left another comment but admittedly I've been busy with other things. Just now checking through emails and seeing people asking me questions. I accidentally ignored people on discord too over the weekend. Hopefully everyone forgives me. DMB has trakt integration, btw. I'm not sure if you were aware of that or not. I am also a big user and I suppose fan of trakt, I've been paying for the premium or whatever they call it, for several years now. My ideal setup is basically: I (or whomever I approve) browse trakt (there's a nice app for iOS called "Watcht" that has better UI, imo, than the native trakt app. Just tossing that out there) select media to add to my watchlist, and it is populated instantly or near-instantly in my Plex server. With the aforementioned applications, namely PD_Zurg, I was able to accomplish that. Nearly instantaneous selection in trakt -> plex-debrid -> media grabbed -> plex updater updates library -> it shows up. Less than a minute turnaround most times. I honestly haven't tested the turnaround in DMB yet. I consider DMB still highly experimental, although it's nearing or possibly is at something I'd consider acceptable to end users (average non-tech user or someone who can't access the terminal to correct errors type of situation). I think, from the small amount I have tested it, it's not as fast. However, I do know one of the main riven developers has stated they're working on better trakt integration. And maybe just in case I wasn't clear on what Riven is or what it does: it's sort of an all-encompassing aggregator of content a user(s) wants to have available. You can browse and add content inside riven itself, or, you can add it your Plex watchlist, or import it from trakt, and many other sources for media watchlists. Riven takes all these accumulated requests from all over, sort of pulls them together into a big "omnilist", if you will, and then searches out acceptable cached torrents on real-debrid (or other services in the future I suppose). Those torrent lists are also gathered from a variety of sources. Stremio, Kodi, etc. uses many of the same for their purposes. Riven sends all these requests to your real-debrid account and they are all mounted via zurg, just a specialized version of rclone. Then it filters the results based on settings the user specifies and creates symlinks which Plex can access. The symlinks are renamed to ensure compatibility with Plex and basically make sure if you requested only 1080p then that's all you see. And all the other stuff in your real-debrid account isn't cluttering up your Plex library. Only what you requested. kinda went on there a bit too much, but just trying to clarify for anyone confused. plex-debrid, btw, was sort of the spiritual precursor (edited from successor- oops) to riven + zurg. It did what they both do, essentially anyway. Later on, as I mentioned above, i-am-puid-0 replaced the original specialized rclone that plex-debrid utilized with zurg (also a specialized, but better, rclone implementation) and created what he calls "PD_zurg". Now that Plex-Debrid is abandoned, people have begun moving to Riven + Zurg (and the other necessary projects like postgresql for a database, etc.). Plex-Debrid still works, and may continue working for years. Who knows. I'm just here for the ride with Riven. Interested in seeing where it goes. Edited October 7, 2024 by UnJustice Quote
Espressomatic Posted October 7, 2024 Posted October 7, 2024 It's sounding more useful the way you've described it. When I originally read about Plex-Debrid it sounded like it was a lot more manual and that as the "admin" it would be up to me to have to intervene (at least approve manually) to get content index/inserted into Plex after someone else requested it. Nor did I know it was as automated as selecting the content directly from a browsable UI as you mentioned. And I definitely didn't know the results would be almost instant. 46 minutes ago, UnJustice said: You can browse and add content inside riven itself, or, you can add it your Plex watchlist, or import it from trakt, and many other sources for media watchlists. Does this mean that in addition to Riven, some other UI is used to add content? If I'm to let other ppl in the fam know how to use something like this, what would be their primary UI to make selections before finally going to play in Plex? And, am I assuming correctly that it's able to support multiple separate Plex users (like in a managed library/home) with a single Real-Debrid account? Does it insert media into Plex such that every user/account sees it or can you put it into libraries that are specific to the individual user/account? Quote
UnJustice Posted October 7, 2024 Author Posted October 7, 2024 You could let them access the Riven UI, yeah. As it currently exists, there aren't different users in the Riven UI. Anyone who accesses the web UI is sort of de facto the admin because that's the only access level, to my knowledge currently, that exists. So, if you let someone access it, they have access to API keys, for example. If it's family you fully trust, it probably doesn't matter. Like sharing passwords. But for anyone less trusted, well, you get it. I'll add looking into access levels eg admin, regular user, etc. to my "list of things to do." 21 minutes ago, Espressomatic said: Does this mean that in addition to Riven, some other UI is used to add content? If I'm to let other ppl in the fam know how to use something like this, what would be their primary UI to make selections before finally going to play in Plex? yeah, it's an either/or situation. Example: You could add Movie 1 right in the Riven search and browse, select request, and it'll grab it. Meanwhile someone might add Movie 2 to a trakt watchlist you have Riven watching. Someone else adds Movie 3 to Overseerr, an IMDB watchlist, Plex watchlist, etc. to include a bunch of apps/websites like that. They're all listed on the DMB or Riven repos. Riven is just gathering from whatever lists or apps with lists, whatever, that you tell it to and give it the required API keys, IP addresses, etc. to access. So there's actually a ton of individual customization you can do as far as how *you* want the user experience to go. If you hate overseerr, as an example, you can just never add it. Or maybe you love overseerr... you see? It's really up to you, the person with the admin access, to set up any additional docker containers or not. The most barebones way would be just linking riven to plex via the token process (normal process for Plex to authorize external websites and such) and adding media via Riven's frontend web UI. But it can be so much more if you wish. and I believe the answer to the latter question regarding media accessibility to other users is currently (and may always remain, I'm unsure) is "everyone will see media once it's added, assuming they have access to the shared library it's in." And there in may lie the caveat of "maybe it depends how granular you want to get..." maybe someone creates like a "kids" requests for young children and all the kids are only able to access that content. Maybe adults get the normal shows/movies access with everything. You'd honestly have to play around with this stuff because unfortunately although I probably know too much about a project I didn't even create (I did help with some very minor debugging, so, that's my excuse for reading too much...) I haven't experimented with much beyond "the basics" which I outlined in my other response. Basically relying on trakt to grab content for my consumption. worth mentioning, I suppose, every user has their own watchlist. If they're utilizing that method, well that's an automatic easy way if the viewer of the content isn't a concern (ie no kids so no issues with everyone seeing everything). Everyone else is gonna see you adding Movie 1, but then again, maybe that doesn't matter? It's sort of creating a massive, growing "Personal Netflix." Personalized in that every user has what they request, but sort of communal in the sense that everyone can view other media that was requested. Honestly if you setup using trakt and have it gather from user watchlists, it's gonna have most stuff already there. Some of those watchlists are seriously huge and ever-growing as content is released. It's possible you rarely need to ever personally go in and request stuff. As far as real-debrid sharing goes: their TOS stipulates that the service may only be accessed from one public IP at any given time. The way this works, that will remain true because you are mounting the rclone on your home server. When Plex accesses the symlinks which are linekd to your zurg rclone, real-debrid is gonna see requests all coming from one IP... the one your server is on. They aren't able to see all the individual end clients which might be inside or outside of the home network. It's just gonna be the one IP, that your Plex server is tied with. And I would just say along with this... people should keep things reasonable. If like 4-5 people regularly stream from real-debrid, what do they care? They aren't gonna notice. If it's 40 people streaming the bandwidth usage, done constantly, well they probably aren't dumb. They intend for it to be one external IP ie one household more or less. That's all I'm saying. People can fly as close to the sun as they wish... but I wouldn't. I'll he gliding at medium height, if you catch my meaning. Quote
Espressomatic Posted October 7, 2024 Posted October 7, 2024 (edited) No worries about hitting real-debrid too hard. We already use it in the house from multiple clients, so the frequency/bandwidth won't change, only the client app. When I asked about users I wasn't so much concerned with people seeing what's being added, but rather whether it can be set up to shove content into different libraries/lists in Plex. I suppose so long as everyone is using their own Plex sign-in ID, Plex itself will keep track of the watched progress, so that if someone watched something I'm also watching, I won't be affected by their progress when I get to that title/episode - or visa versa. I don't have any of the arr stuff nor overseerr installed yet, but they're on my list. I figured if I was able to automate that kind of thing, then I might get back to collecting/saving some specific content on my server(s). It's really been all-streaming for the past 5 years and I haven't really touched any personal collections. Thanks again for all this info, I'm sure to give it a try. It's funny that to try and "simplify" things around here I have to first get way into the weeds with a bunch of new stuff. I'd been running a single Unraid system for 5 years and as of a coupler of months ago I'm now up to 4, albeit each with a more focused purpose. I've been trying to install one app/component every couple of days so I don't get overwhelmed - and so I still have time to do everything else that keeps me busy. Today it was Borg backup and I now have the server sorted along with BorgWarehouse. Still need to configure clients. Edited October 7, 2024 by Espressomatic 1 Quote
CrankyLabs Posted October 8, 2024 Posted October 8, 2024 It works! I had the origin IP set to the default 0.0.0.0. The settings page works now. It's strange that other things like requesting content worked but not the settings. The symlinks are also working. I'm not sure why. I just went into plex today and the content was there 🤷♂️ Thanks for your help! 🙇♂️ 1 Quote
UnJustice Posted October 9, 2024 Author Posted October 9, 2024 On 10/8/2024 at 7:51 AM, CrankyLabs said: It works! I had the origin IP set to the default 0.0.0.0. The settings page works now. It's strange that other things like requesting content worked but not the settings. The symlinks are also working. I'm not sure why. I just went into plex today and the content was there 🤷♂️ Thanks for your help! 🙇♂️ no problem. The origin issue is related to CORS and the browsers preventing cross site posting. btw if you ever reverse proxy the frontend web UI page: 1. SECURE IT (API keys can be unmasked since it's essentially running as admin for the container) 2. You can delete the origin variable. This will allow users of the proxied url (https://riven.yourdomain.tld) to save settings. This may or may not be desirable behavior, but, just letting people know for the future (it's also in the Riven Wiki) With symlinks: just make sure if DMB restarts, you *MUST* restart Plex too. DMB and Plex won't communicate until you do so. You can change and add an dependency on the DMB container being healthy. Or, what i do is just watch the DMB logs and when it says starting riven backend and frontend, I restart Plex, bam, it should be fine. Quote
UnJustice Posted October 9, 2024 Author Posted October 9, 2024 On 10/7/2024 at 3:28 PM, Espressomatic said: No worries about hitting real-debrid too hard. We already use it in the house from multiple clients, so the frequency/bandwidth won't change, only the client app. When I asked about users I wasn't so much concerned with people seeing what's being added, but rather whether it can be set up to shove content into different libraries/lists in Plex. I suppose so long as everyone is using their own Plex sign-in ID, Plex itself will keep track of the watched progress, so that if someone watched something I'm also watching, I won't be affected by their progress when I get to that title/episode - or visa versa. I don't have any of the arr stuff nor overseerr installed yet, but they're on my list. I figured if I was able to automate that kind of thing, then I might get back to collecting/saving some specific content on my server(s). It's really been all-streaming for the past 5 years and I haven't really touched any personal collections. Thanks again for all this info, I'm sure to give it a try. It's funny that to try and "simplify" things around here I have to first get way into the weeds with a bunch of new stuff. I'd been running a single Unraid system for 5 years and as of a coupler of months ago I'm now up to 4, albeit each with a more focused purpose. I've been trying to install one app/component every couple of days so I don't get overwhelmed - and so I still have time to do everything else that keeps me busy. Today it was Borg backup and I now have the server sorted along with BorgWarehouse. Still need to configure clients. The easiest way (to my mind at the moment) to have what you're saying there, is yes everyone who uses it gets their own Plex account and whatever is added to an individual Plex account's watchlist will be grabbed. Their watch history and place in the show/movie will be saved to that user. I haven't tested (yet) if using the Plex home feature (like people *in your actual home* can piggieback sort of on your Plex account) works as far as dividing up history and resuming watching, etc. Maybe it requires totally separate Plex accounts. Not sure. I'll test it at some point or find the answer if someone else did. I get busy or otherwise distracted with other projects far too often... but I am committed, if only for personal reasons at this moment, to testing and helping people debug DMB or Riven generally. So, I'll add updates here and in my unRAID templates GitHub. Try to help people use it and get what they want from it. This type of project has a ton of growth potential in my mind and I want to see it grow all the way Quote
AmIHotSwapOrNot Posted October 10, 2024 Posted October 10, 2024 Hi I am running DMB, but it won't start - the logs indicate it fails trying to get the latest zurg-testing - I don't know why it wouldn't be ables to access GitHub, and I have followed setup instruction. Any help would be welcomed. onError("<urllib3.connection.HTTPSConnection object at 0x147be85e5d90>: Failed to resolve 'api.github.com' ([Errno -3] Try again)")) Oct 10, 2024 16:57:01 - ERROR - Failed to fetch https://api.github.com/repos/debridmediamanager/zurg-testing/releases/latest after 5 attempts. Quote
UnJustice Posted October 10, 2024 Author Posted October 10, 2024 4 hours ago, AmIHotSwapOrNot said: Hi I am running DMB, but it won't start - the logs indicate it fails trying to get the latest zurg-testing - I don't know why it wouldn't be ables to access GitHub, and I have followed setup instruction. Any help would be welcomed. onError("<urllib3.connection.HTTPSConnection object at 0x147be85e5d90>: Failed to resolve 'api.github.com' ([Errno -3] Try again)")) Oct 10, 2024 16:57:01 - ERROR - Failed to fetch https://api.github.com/repos/debridmediamanager/zurg-testing/releases/latest after 5 attempts. Many possibilities here. 1. First try this command to see the owner of your directories ls -l /path/to/file For example ls -l /mnt/user/appdata/DMB and ls -l /mnt/user/DMB In my case, which is just the default I also set the container to use. Config files in the /appdata directory. Mounts, symlinks, etc. in a directory I named DMB which could be on the array or a cache or whatever. You should get something like this ls -l /mnt/user/appdata/DMB total 0 drwxr-xr-x 1 nobody users 8 Oct 8 21:11 PostgreSQL/ drwxr-xr-x 1 nobody users 8 Oct 8 21:11 Riven/ drwxr-xr-x 1 nobody users 4 Oct 8 21:11 Zurg/ drwxr-xr-x 1 nobody users 26 Oct 8 21:11 config/ drwxr-xr-x 1 nobody users 116 Oct 10 13:14 log/ ls -l /mnt/user/DMB total 0 drwxr-xr-x 1 nobody users 6 Oct 8 21:11 Riven/ drwxr-xr-x 1 nobody users 6 Oct 8 21:11 Zurg/ drwxr-xr-x 1 nobody users 18 Oct 10 16:40 transcoder-temp/ drwxr-xr-x 1 nobody users 8 Sep 23 17:47 zilean/ The key thing being the user should be "nobody" and the group "users" for all of the directories. 2. If the owner:group is correct, it's possible GitHub and/or your connection and/or a connection between you and GitHub was having issues earlier. Try manually restarting DMB and then check the log .txt file for the error. 3. If that doesn't work, try this command in unRAID terminal curl https://api.github.com/repos/debridmediamanager/zurg-testing/releases/latest It should give a huge pile of text/URLs as a reply and not any sort of connection errors. The text will contain all the links to the zurg releases. (This command isn't downloading or changing anything, btw, it's just so you can see what your server can see). If there's a connection error you'll just have to troubleshoot that. Something like DNS filter might be catching the API request. Try running the curl command in your router's terminal if you have access and can. Try it on other computers. I can tell you that the URL works for me at the moment. If you're still having issues, take a screenshot of your DMB template filled-in (redact any API keys or anything sensitive). If the container is just straight up not starting (red square) then post the docker run output. And post the logs for the latest run. Thanks. Quote
Mavrag Posted October 11, 2024 Posted October 11, 2024 23 hours ago, AmIHotSwapOrNot said: Hi I am running DMB, but it won't start - the logs indicate it fails trying to get the latest zurg-testing - I don't know why it wouldn't be ables to access GitHub, and I have followed setup instruction. Any help would be welcomed. onError("<urllib3.connection.HTTPSConnection object at 0x147be85e5d90>: Failed to resolve 'api.github.com' ([Errno -3] Try again)")) Oct 10, 2024 16:57:01 - ERROR - Failed to fetch https://api.github.com/repos/debridmediamanager/zurg-testing/releases/latest after 5 attempts. I believe your issue is that your network is set to none in the config of the container. 1 Quote
Mavrag Posted October 13, 2024 Posted October 13, 2024 (edited) Hi @UnJustice, I hope you're doing well. I'm running DMB 5.3.0 on Unraid using the Docker container and I've been experiencing an issue where zombie dotnet processes accumulate over time. This seems to make the Zurg and Riven folders completely unusable until I restart the DMB container. After restarting DMB, I also need to restart Plex, Emby, or Jellyfin to get everything working again, which makes this issue quite disruptive. Based on what I've observed, I suspect the issue might be tied to the Riven process, as it manages the symlinks and backend data that interact with these folders. I've tried this on two separate Unraid servers, and both exhibit the same behavior. Have you encountered this issue before, or have others reported anything similar? I'd greatly appreciate any insights or advice you might have! Thanks for your time Edited October 13, 2024 by Mavrag Quote
AmIHotSwapOrNot Posted October 15, 2024 Posted October 15, 2024 On 10/11/2024 at 5:10 PM, Mavrag said: I believe your issue is that your network is set to none in the config of the container. Thank you both for your help, it was the network setting, thanks again. Quote
UnJustice Posted October 15, 2024 Author Posted October 15, 2024 On 10/13/2024 at 7:37 AM, Mavrag said: Hi @UnJustice, I hope you're doing well. I'm running DMB 5.3.0 on Unraid using the Docker container and I've been experiencing an issue where zombie dotnet processes accumulate over time. This seems to make the Zurg and Riven folders completely unusable until I restart the DMB container. After restarting DMB, I also need to restart Plex, Emby, or Jellyfin to get everything working again, which makes this issue quite disruptive. Based on what I've observed, I suspect the issue might be tied to the Riven process, as it manages the symlinks and backend data that interact with these folders. I've tried this on two separate Unraid servers, and both exhibit the same behavior. Have you encountered this issue before, or have others reported anything similar? I'd greatly appreciate any insights or advice you might have! Thanks for your time Forgot to reply here, but I asked over in i-am-puid-0's discord the day you asked here. He said it's likely related to zilean as it's the only service within DMB that uses dotnet update he pushed today (might) fix it for you. https://github.com/I-am-PUID-0/DMB/releases/tag/5.3.1 update your container, see if the issue is fixed Quote
Chamzamzoo Posted October 28, 2024 Posted October 28, 2024 (edited) Glad I found this, I was about to follow the guides for plex_debrid etc without realising it wasn't being developed anymore. I have a few questions.. I've been following the guide in the link on the docker: https://github.com/Unlearned6688/unraid-templates/blob/main/template-readmes/dmb-readme.md My folders ended up like this: Initially I added the Zurg folder to plex config as it had things in (from my RD account? not sure, but they worked and streamed from RD) , but looks like I need to add the Riven/mnt ones instead. These are empty. I only have space for one directory in my plex config, but the guide shows using the Zurg and Riven folders here: Not sure what to do about that. Next part where I come unstuck is in Riven setup. What do I put in the rclone and library paths? Leave it as is in the Riven guide? this config fails to initialise. Further to that, I am now unable to load Riven, 500 server error. Didn't change anything as far as I know, but these are the logs when I boot it up: Oct 28, 2024 14:48:18 - INFO - Zilean subprocess: | "Zilean.DmmScraper.Features.Dmm.DmmScraping" | Processed "fbf00af9-cdec-42a9-9927-d8deb6eb4985.html" with 36095 torrents Oct 28, 2024 14:48:18 - INFO - Zilean subprocess: Processing DMM Hashlists: 99% Oct 28, 2024 14:48:18 - INFO - Zilean subprocess: | "Zilean.DmmScraper.Features.Dmm.DmmScraping" | All files processed Oct 28, 2024 14:48:19 - INFO - Zilean subprocess: | "Zilean.DmmScraper.Features.PythonSupport.ParseTorrentNameService" | RTN: Parsing 726241 torrents Oct 28, 2024 14:48:23 - INFO - Attempt 9/10 to fetch settings from http://127.0.0.1:8080/settings/get/all Oct 28, 2024 14:48:23 - ERROR - Error fetching settings: HTTPConnectionPool(host='127.0.0.1', port=8080): Max retries exceeded with url: /settings/get/all (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x153103c06e10>: Failed to establish a new connection: [Errno 111] Connection refused')) Oct 28, 2024 14:48:23 - INFO - Retrying in 5 seconds... (9/10) Oct 28, 2024 14:48:28 - INFO - Attempt 10/10 to fetch settings from http://127.0.0.1:8080/settings/get/all Oct 28, 2024 14:48:28 - ERROR - Error fetching settings: HTTPConnectionPool(host='127.0.0.1', port=8080): Max retries exceeded with url: /settings/get/all (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x153103c0ce90>: Failed to establish a new connection: [Errno 111] Connection refused')) Oct 28, 2024 14:48:28 - ERROR - Max retries reached. Failed to fetch settings from http://127.0.0.1:8080/settings/get/all Oct 28, 2024 14:48:28 - ERROR - Failed to load settings: Max retries reached Oct 28, 2024 14:48:28 - INFO - Configuring riven_frontend Oct 28, 2024 14:48:28 - INFO - riven_frontend current version: v0.16.3 Oct 28, 2024 14:48:28 - INFO - Automatic updates set to 24 hours for riven_frontend Oct 28, 2024 14:48:28 - INFO - Checking for available riven_frontend updates Oct 28, 2024 14:48:28 - INFO - Currently installed [v0.16.3] for riven_frontend Oct 28, 2024 14:48:28 - INFO - Latest available version [v0.16.3] for riven_frontend Oct 28, 2024 14:48:28 - INFO - Automatic update not required for riven_frontend Oct 28, 2024 14:48:28 - INFO - Starting riven_frontend process Oct 28, 2024 14:48:28 - INFO - riven_frontend process started with PID: 173 Oct 28, 2024 14:48:28 - INFO - riven_frontend subprocess: Listening on 0.0.0.0:3000 Oct 28, 2024 14:48:31 - ERROR - The Riven backend process is not running. Oct 28, 2024 14:49:31 - ERROR - The Riven backend process is not running. Oct 28, 2024 14:50:32 - ERROR - The Riven backend process is not running. Oct 28, 2024 14:51:32 - ERROR - The Riven backend process is not running. Oct 28, 2024 14:52:32 - ERROR - The Riven backend process is not running. Oct 28, 2024 14:53:32 - ERROR - The Riven backend process is not running. Oct 28, 2024 14:54:32 - ERROR - The Riven backend process is not running. Oct 28, 2024 14:55:33 - ERROR - The Riven backend process is not running. Oct 28, 2024 14:56:33 - ERROR - The Riven backend process is not running. Oct 28, 2024 14:56:41 - INFO - riven_frontend subprocess: TypeError: fetch failed Oct 28, 2024 14:56:41 - INFO - riven_frontend subprocess: at node:internal/deps/undici/undici:12500:13 Oct 28, 2024 14:56:41 - INFO - riven_frontend subprocess: at process.processTicksAndRejections (node:internal/process/task_queues:95:5) Oct 28, 2024 14:56:41 - INFO - riven_frontend subprocess: at async s (file:///riven/frontend/node_modules/.pnpm/@[email protected]/node_modules/@hey-api/client-fetch/dist/index.js:1:5004) Oct 28, 2024 14:56:41 - INFO - riven_frontend subprocess: at async onboarding (file:///riven/frontend/build/server/chunks/hooks.server-BJJXyftd.js:44:39) Oct 28, 2024 14:56:41 - INFO - riven_frontend subprocess: at async respond (file:///riven/frontend/build/server/index.js:3405:22) Oct 28, 2024 14:56:41 - INFO - riven_frontend subprocess: at async Array.ssr (file:///riven/frontend/build/handler.js:1270:3) { Oct 28, 2024 14:56:41 - INFO - riven_frontend subprocess: [cause]: Error: connect ECONNREFUSED 127.0.0.1:8080 Oct 28, 2024 14:56:41 - INFO - riven_frontend subprocess: at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1605:16) { Oct 28, 2024 14:56:41 - INFO - riven_frontend subprocess: errno: -111, Oct 28, 2024 14:56:41 - INFO - riven_frontend subprocess: code: 'ECONNREFUSED', Oct 28, 2024 14:56:41 - INFO - riven_frontend subprocess: syscall: 'connect', Oct 28, 2024 14:56:41 - INFO - riven_frontend subprocess: address: '127.0.0.1', Oct 28, 2024 14:56:41 - INFO - riven_frontend subprocess: port: 8080 Oct 28, 2024 14:56:41 - INFO - riven_frontend subprocess: } Oct 28, 2024 14:56:41 - INFO - riven_frontend subprocess: } Oct 28, 2024 14:57:33 - ERROR - The Riven backend process is not running. Oct 28, 2024 14:58:33 - ERROR - The Riven backend process is not running. Any help much appreciated, sorry if this is super obvious. Edited October 28, 2024 by Chamzamzoo Quote
Chamzamzoo Posted October 28, 2024 Posted October 28, 2024 Got a bit further now, nuked it all and left the Riven settings as default, for some reason I tried to change them to what was in the guide. It gets files into the Zurg folder, but not the Riven folder. Not quite sure why, logs say symlinks created! But they are not.riven-20241028-1704(1).log Quote
UnJustice Posted October 28, 2024 Author Posted October 28, 2024 @Chamzamzoo Quote I only have space for one directory in my plex config, but the guide shows using the Zurg and Riven folders here: Not sure what to do about that. Unless I'm misunderstanding your question here, all you have to do to add new paths/ports/variables etc is edit the template, scroll to the bottom of the webpage, and click the "Add another path... etc" button. You might need to toggle on "advanced view" at the top of the template first, I'm honestly not sure. here's some pics: advanced view toggle: add path, port, etc. (bottom of template) example what it will look like while you are creating it. in case it isn't clear, you can just name it like "riven symlink" my excessively descriptive naming is purely for the purpose of showing people... like right now! Quote Next part where I come unstuck is in Riven setup. What do I put in the rclone and library paths? Leave it as is in the Riven guide? You don't need to modify those settings at all. Those are internal paths to the container. So, I would recommend never changing them or messing with them for basically any reason. You can set the corresponding host paths to whatever. But probably not a reason to change those either unless you have another container named dmb Quote Initially I added the Zurg folder to plex config as it had things in (from my RD account? not sure, but they worked and streamed from RD) , but looks like I need to add the Riven/mnt ones instead. These are empty. So it's important to understand what riven and zurg are intended to do in general and within the context of dmb. Riven's job is to gather together all the media the user wants to view. It gathers it from sources that include (not exhaustive list): the actual riven frontend itself (the nice little webui you've seen already it seems), trakt, plex watchlists, etc. It gathers from the sources you tell it to using the credentials you provide. It doesn't "care" what's in your real-debrid account (all the contents added from ANY source- you can view all of these, btw, on the website directly or by logging into your RD webdav. go to their site for instructions if you want to mess with that. you can delete unused or unwanted stuff that way though... just an FYI). It's only looking for relevant media that matches what it has been told to seek out. So if it isn't added on trakt, or in the riven frontend, etc. to include all the possible sources for lists of media... then it doesn't care. It ignores it. Some people enter into trying to use riven and see this as a negative because they have to import lists and stuff. I understand that viewpoint, but it's a one time thing (hopefully anyway!) and after that it's actually very nice to have a hard division between "random stuff you add to your RD" and "stuff for riven." Just imagine all the junk that could be in anyone's RD account... but it won't show up in your plex because riven ignores it. Or maybe you don't care. Either way, you gotta add media for it to search for. Zurg's job is to mount the media that riven seeks out. It's just rclone but specifically customized to work well with real-debrid's webdav and make mounting it, etc. painless So, add some stuff to riven (you can just click a movie and click add right there in the frontend for the easiest test). Check the logs. You should see it basically instantly add the movie to it's database, search, find it, add, then plex has to update. It's not an instant thing, but it's pretty quick. If you're looking for "instant" I could point you towards a project like stremio. If you're looking for "add a bunch of lists of stuff and it will be viewable quickly but necessarily instantly" then dmb can do that. more a preference type thing. Plex is also much easier to share, imo, if that's something you consider important. btw 500 server errors are basically always caused by lack of communication between riven and plex OR riven's origin IP is incorrect. it depends where and when you get the error. So, check the origin IP (set it to your unraid OS's IP http://<local-unraid-IP>). Add the other path to your plex container. restart DMB, restart plex, see what happens Quote
Chamzamzoo Posted October 29, 2024 Posted October 29, 2024 (edited) Thanks for the extensive reply, really appreciate it. I started it all again and didn't mess with any settings (was confused as the linked guide had images that didn't match my Riven's defaults), and it's working now. I also seemingly had to change the contrainer path names in Plex from /media to /mnt, something not mentioned in any guides but the guys on Discord told me about: I thought I was having issues with symlinks not being created, but you just can't see them in unraid's file manager! they eventually got picked up by plex. I'm pursuing this as I have endless audio sync issues on Firesticks, I've moved things to apple TV and main streaming platforms are much better. Plex still has issues but now I'm using infuse I think that will be better too. I'm looking at the torrent ranking now, the instructions talk about easy switching between two preset profiles, default and best. Seemingly saying I just change the name to Best in settings.json and the rest of the settings would adjust, but I must be misunderstanding that as they've all remained the same. Unless that's all I needed to do to get 4K and it ignores the resolutions section and the other "default" settings? "ranking": { "profile": "best", "require": [], "exclude": [], "preferred": [], "resolutions": { "2160p": false, "1080p": true, "720p": false, "480p": false, "360p": false, "unknown": true Or do I need to comb through it and change everything else individually? I think this platform is very promising! Edited October 29, 2024 by Chamzamzoo Quote
UnJustice Posted October 29, 2024 Author Posted October 29, 2024 9 hours ago, Chamzamzoo said: was confused as the linked guide had images that didn't match my Riven's defaults Can you perhaps point me to what you're talking about here specifically? I wrote a lot of the explanations for things a while back and sporadically. If I made mistakes or just straight up said something wrong then I'd like to fix it to make it consistent. Is the issue just that the paths are different between, for example, a Debian/Ubuntu based OS vs unRAID (they tend to use /home/<user>/... whatever else instead of unRAID's /mnt/user...)? Or is it something else? As far as the container pathing regarding dmb -> plex goes, it's a little bit of a quirk of symlinks to my understanding. I'm definitely not that familiar with symlinks and haven't dug too much into the documentation on them, but as you were told and found to he true yes the container mount dir and host mount dir must match between two separate containers. I don't know why it matters, I just know it does. If someday I make an "unraid specific" docker image (ha! Unlikely! But maybe) perhaps I'll change those path names to not be so generic. with the quality ranking stuff (resolution, etc.) I will be 100% honest... I don't know. I messed with it a small amount one time and honestly haven't even checked into it much to see the results. I've watched like 4 episodes of one tv show in the last like 2 months. Which might raise legitimate questions about why I bother working with media docker containers all the time... who knows. But I really don't know. I changed mine to grab remux and other very high quality versions for movies. I'll look into it more at some point and play with the settings and see what might be going on. Quote
Chamzamzoo Posted November 4, 2024 Posted November 4, 2024 Happy to point out what confused me if it's helpful. this image has the /data. and /mnt container paths in, but I read the instructions as making sure the variable paths were identical (so the /mnt/ser/DMB/Zurg or Riven/mnt ones), and missed that I had to edit the plex container path (and add a new one as plex only gives one initially). The other bit is outside your guide I think, when linked to the Riven guide from the developer it shoes different paths like this: So I changed my paths to match it! Woops. I ended up going through the filtering options individually and it works nicely. Just couldn't get the predefined "best" one to do anything. Trakt also ended up working, a bit too well! I was expecting it to provide a list of shows to then REquest in Riven, but it dumped the whole lot in my plex library. Started it again and will be careful what lists I add. Seems to be going pretty well now after the last few updates. Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.