• Login
  • Register
  • Login Register
    Login
    Username/Email:
    Password:
    Or login with a social network below
  • Forum
  • Website
  • GitHub
  • Status
  • Translation
  • Features
  • Team
  • Rules
  • Help
  • Feeds
User Links
  • Login
  • Register
  • Login Register
    Login
    Username/Email:
    Password:
    Or login with a social network below

    Useful Links Forum Website GitHub Status Translation Features Team Rules Help Feeds
    Jellyfin Forum Support General Questions Couple of Questions (restoring backup, reverse proxy)

     
    • 0 Vote(s) - 0 Average

    Couple of Questions (restoring backup, reverse proxy)

    4r5hw45twh
    Offline

    Member

    Posts: 132
    Threads: 31
    Joined: 2024 Mar
    Reputation: 0
    #1
    2025-01-19, 01:05 PM (This post was last modified: 2025-01-19, 04:23 PM by 4r5hw45twh. Edited 20 times in total.)
    My setup:
    Mini PC with latest Ubuntu LTS on it. Docker (not Docker Desktop) installed with Jellyfin in it.

    Regarding restoring backup from another OS:
    I just switched from a Windows 10 non-Docker setup. I backed up my Windows JF server before wiping the OS and getting Ubuntu. I now use a Docker setup for JF.
    Are there certain files I can transfer to my Ubuntu JF installation so that all the metadata and data in general stays how it was? User accounts, themes, collections, etc etc.
    It seems my Windows' ProgramData folder looks similar to my Ubuntu's /Jellyfin/Config folder, minus some folders.
    Could I simply copy everything in the old ProgramData folder and paste into /Jellyfin/Config folder, or how does a nom-Docker Windows backup get restored to a Docker Ubuntu setup?
    Ok, so I tried simply copy & pasting from ProgramData (ServerData in photo below) to my Ubuntu Config area, and that does seem to transfer my theme at least but then if I access Jellyfin in my browser, it shows my server name to connect to but never lets me actually connect to it.
    [Image: 79Lyhu2.png]

    Regarding reverse proxy:
    EDIT: ALL of the below has been resolved (for now). I needed to remove the network_mode: 'host' line on my docker compose file for Jellyfin. Jesus.
    What is the easiest route to go with Linux? I installed NPM in Docker, but I just get too lost following the guide here because
    at the very end of it, it says, "In the 'SSL' tab, use the jellyfin.example.org certificate that you created with Nginx Proxy Manager" but when I test my domain name in that section, I get:
    "There is a server found at this domain but it returned an unexpected status code 502. Is it the NPM server? Please make sure your domain points to the IP where your NPM instance is running."

    EDIT for above: So, not sure what changed, but I actually am getting a success message when testing the SSL now in NPM. HOWEVER, I still get a 502 Bad Gateway error on my domain name's page itself that accesses Jellyfin....

    I have my own domain name and use Cloudflare with it. On Windows, I also had Cloudflared installed as a service to make a tunnel with CF. Do I need this with Linux as well? I'm also thinking the issue might simply be that I run
    JF in Docker now, so I don't have my DNS in Cloudflare pointing to the correct IP or something? On Windows, I had JF as a tray icon, so it had my PC's IP, not something in Docker. How would I fix this?
    Not sure if it helps, but if I do "sudo docker ps," it looks like NPM is at:
    Code:
    0.0.0.0:80-81->80-81/tcp, :::80-81->80-81/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp
    And then if I do "sudo docker inspect [npm container ID from previous command above]", I get an IP address at the bottom.
    It looks like "172.xx.x.x"

    My initial NPM docker-compose file was:
    Code:
    services:
      app:
        image: 'jc21/nginx-proxy-manager:latest'
        restart: unless-stopped
        ports:
          - '80:80'
          - '81:81'
          - '443:443'
        volumes:
          - ./data:/data
          - ./letsencrypt:/etc/letsencrypt

    I also put NPM & JF on the same Docker network in the docker-compose file for them both. Let's just call it "mynetwork" for now.
    EDIT: Actually, I just ran "sudo docker ps --format "table {{.Names}}\t{{.Networks}}"" and got
    Code:
    jellyfin    host
    npm-app-1  mynetwork
    So when I re-ran the docker-compose for Jellyfin, it didn't change to NPM's network for some reason? I assume it has something to do with Jellyfin's docker compose section of "network_mode: 'host'"?
    If I try to force JF to use that network with "sudo docker network connect mynetwork jellyfin", I get this error:
    "Error response from daemon: container sharing network namespace with another container or host cannot be connected to any other network"
    TheDreadPirate
    Offline

    Community Moderator

    Posts: 15,375
    Threads: 10
    Joined: 2023 Jun
    Reputation: 460
    Country:United States
    #2
    2025-01-19, 09:09 PM
    Your Cloudflare domain should be pointing to your public IP. Which you cannot get from docker. That 172 address is the local IP of the container.

    You'd need to look at your router's UI or use a site like "what is my IP" to find your public IP. You should also consider using this docker container to dynamically update your Cloudflare domain if your public IP changes.

    https://github.com/favonia/cloudflare-ddns

    To use NPM with Jellyfin, you would need to publish ports 80 and 443. Which you already did. What does your Nginx config look like for Jellyfin? Are you using the Jellyfin's bridge IP? Which WOULD be 172.X.X.X. You do NOT need to publish port 8096 in the jellyfin docker config if all access to Jellyfin will go through NPM.
    Jellyfin 10.10.7 (Docker)
    Ubuntu 24.04.2 LTS w/HWE
    Intel i3 12100
    Intel Arc A380
    OS drive - SK Hynix P41 1TB
    Storage
        4x WD Red Pro 6TB CMR in RAIDZ1
    [Image: GitHub%20Sponsors-grey?logo=github]
    4r5hw45twh
    Offline

    Member

    Posts: 132
    Threads: 31
    Joined: 2024 Mar
    Reputation: 0
    #3
    2025-01-19, 09:18 PM
    (2025-01-19, 09:09 PM)TheDreadPirate Wrote: You should also consider using this docker container to dynamically update your Cloudflare domain if your public IP changes.
    https://github.com/favonia/cloudflare-ddns

    I gotcha. So, what about the restoring-from-a-backup part? That's really the main thing I'm stuck on at the moment and once that's solved, I think I'm finally good to go again.
    Not sure which file(s) I can straight up copy-and-paste over from ProgramData on Windows to /Jellyfin/Config on Ubuntu.
    What my main concern is, is restoring the data of what I've already watched, the time left on certain episodes of stuff, all the metadata I had to manually change for some movies, etc.
    TheDreadPirate
    Offline

    Community Moderator

    Posts: 15,375
    Threads: 10
    Joined: 2023 Jun
    Reputation: 460
    Country:United States
    #4
    2025-01-20, 12:20 AM
    You cannot simply copy and paste Jellyfin files between different install types. The Jellyfin database contains a lot of absolute paths for metadata and other files that would break when switching from Windows to Linux. Even going from a direct Linux install to a docker install requires some extra work to be able to migrate.

    A community member wrote a migration script to make these database changes for migrating from Windows to Docker, but it hasn't been updated in 2 years. So it is possible it no longer works with Jellyfin 10.9 and newer. Worth a try though. Just make sure you have a backup copy.

    https://jellyfin.org/docs/general/admini...-migration
    https://github.com/MMMZZZZ/Jellyfin-Migrator

    If you were restoring from Docker to Docker, you would simply restore the /config and /cache folders you specified in the Docker compose.
    Jellyfin 10.10.7 (Docker)
    Ubuntu 24.04.2 LTS w/HWE
    Intel i3 12100
    Intel Arc A380
    OS drive - SK Hynix P41 1TB
    Storage
        4x WD Red Pro 6TB CMR in RAIDZ1
    [Image: GitHub%20Sponsors-grey?logo=github]
    4r5hw45twh
    Offline

    Member

    Posts: 132
    Threads: 31
    Joined: 2024 Mar
    Reputation: 0
    #5
    2025-01-20, 01:05 PM (This post was last modified: 2025-01-20, 01:07 PM by 4r5hw45twh. Edited 1 time in total.)
    (2025-01-20, 12:20 AM)TheDreadPirate Wrote: If you were restoring from Docker to Docker, you would simply restore the /config and /cache folders you specified in the Docker compose.

    Does this apply for hopping OS's as well? As long as it's in Docker, I could copy/paste the folders between OS's? Or still only OS's of the same type?
    Because it sounds like I'll just have to bite the bullet yet again (I've rebuilt this darn library, metadata, etc etc, like 6 times in the past year and it takes hours each time) and get it how I want (again) on Ubuntu/Docker and then from there, could be a simple copy-and-paste thing with the Docker volume folders?
    TheDreadPirate
    Offline

    Community Moderator

    Posts: 15,375
    Threads: 10
    Joined: 2023 Jun
    Reputation: 460
    Country:United States
    #6
    2025-01-20, 06:14 PM
    Docker is Docker. Even going to Docker in MacOS should be ok. Or even Docker in WSL2 in Windows.

    That is the advantage of Docker. Data portability.
    Jellyfin 10.10.7 (Docker)
    Ubuntu 24.04.2 LTS w/HWE
    Intel i3 12100
    Intel Arc A380
    OS drive - SK Hynix P41 1TB
    Storage
        4x WD Red Pro 6TB CMR in RAIDZ1
    [Image: GitHub%20Sponsors-grey?logo=github]
    « Next Oldest | Next Newest »

    Users browsing this thread: 1 Guest(s)


    • View a Printable Version
    • Subscribe to this thread
    Forum Jump:

    Home · Team · Help · Contact
    © Designed by D&D - Powered by MyBB
    L


    Jellyfin

    The Free Software Media System

    Linear Mode
    Threaded Mode