Good day, everyone. I took the plunge into self-hosting in the last couple of weeks and set up a server running Linux Mint. I installed the media streaming stack composed of Jellyfin, Jellyseerr, Radarr, Sonarr, Jackett, Bazarr and Transmission according to this excellent guide: https://zerodya.net/self-host-jellyfin-media-streaming-stack/

Before installing it on my server, I tested it on my Linux Mint laptop and it worked perfectly. I also run NordVPN and had no issues running the streaming stack with my VPN running on the laptop. I then installed it on my server (running the exact same version of Linux Mint) and it runs fine UNTIL I turn on my VPN and then I get an “Internal Server Error 500” from Jellyseerr. Jellyseerr is still able to list the requests I’ve made, but can’t display the Discover sections that list popular movies and shows unless I turn off the VPN.

The one difference between my successful laptop test setup and my final server setup is that I’m also running Pi-Hole on my server, so perhaps the problem is related to that? I installed the Pi-Hole using the official Ubuntu installer on the Pi-Hole website.

Anyway, I’m new to self-hosting so I’m not sure if I’ve provided the necessary details. Any help getting this setup to work with my VPN is greatly appreciated.

  • tuff_wizard@aussie.zone
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    Well first I’d try turning off pi hole on the server avenue see if it fixes the issue, even though it’s unlikely as pihole should be handling dns requests for your whole network anyway.

    Usually with this setup you only need to place your torrent/Usenet download client behind the VPN. Use a container like gluetun and make your download client container a service of gluetun so it only connects though gluetun. The rest of your stack can just access the internet normally.

    There should be more info in the jellyseer log file, have a look in your docker directory or have a play with the “docker logs” command and try to recreate the issue. If you kill your jellyseer container then start it

    • sailingbythelee@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      You were right, it wasn’t the pihole. I managed to get the system running by whitelisting my LAN in my VPN, which I’ve never had to do before. I’ll certainly look into creating services with gluetun, though! Thanks!

    • sailingbythelee@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      1 year ago

      Just to close off this thread, you were 100% right about using Gluetun as well.

      After I got everything working nicely (pre-Gluetun), I got a strange email from my ISP about allegedly copyrighted material being made available by someone or other on my home IP. No idea who that could be.

      Turns out, friends, that VPNs sometimes silently drop connection. And the killswitch may block the traffic of the user that initiated the VPN connection, but it not does not block Transmission traffic inside a docker container. That was a bummer to find out the hard way. Anyway, running the VPN in a Gluetun container and making it a service of the Transmission container solves that problem rather nicely and is surprisingly easy to implement. Thanks to the developer for that, and thanks to you for pointing me down the right path!

  • ck_@discuss.tchncs.de
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    I’d put my money on asymetric network routing due to the VPN trying to route packages into the tunnel that should probably go to your LAN. A simple workaround, if you are unfamiliar with how to investigate and fix this, would be to put stuff that is supposed to go through the VPN into a virtual machine and have it download things to a shared folder that you can then stream from. Cuts out a whole bunch of problems.

    • sailingbythelee@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      Thank you for this. It got me to look up asymmetric network routing :)

      During troubleshooting, I realized that it wasn’t just Jellyseerr that was being blocked, but all kinds of processes. I managed to get the system working by whitelisting my local network within my VPN. I’ve never had to do that before, so it probably indicates some other problem. I’ll look into virtual machines next!