Fresh Proxmox install, having a dreadful time. Trying not to be dramatic, but this is much worse than I imagined. I’m trying to migrate services from my NAS (currently docker) to this machine.

How should Jellyfin be set up, lxc or vm? I don’t have a preference, but I do plan on using several docker containers (assuming I can get this working within 28 days) in case that makes a difference. I tried WunderTech’s setup guide which used an lxc for docker containers and a separate lxc of jellyfin. However that guide isn’t working for me: curl doesn’t work on my machine, most install scripts don’t work, nano edits crash, and mounts are inconsistent.

My Synology NAS is mounted to the host, but making mount points to the lxc doesn’t actually connect data. For example, if my NAS’s media is in /data/media/movies or /data/media/shows and the host’s SMB mount is /data/, choosing the lxc mount point /data/media should work, right?

Is there a way to enable iGPU to pass to an lxc or VM without editing a .conf in nano? When I tried to make suggested edits, the lxc freezes for over 30 minutes and seemingly nothing happens as the edits don’t persist.

Any suggestions for resource allocation? I’ve been looking for guides or a formula to follow for what to provide an lxc or VM to no avail.

If you suggest command lines, please keep them simple as I have to manually type them in.

Here’s the hardware: Intel i5-13500 64GB Crucial DR5-4800 ASRock B760M Pro RS 1TB WD SN850X NVMe

  • frongt@lemmy.zip
    link
    fedilink
    English
    arrow-up
    9
    ·
    edit-2
    12 days ago

    curl doesn’t work on my machine, most install scripts don’t work, nano edits crash, and mounts are inconsistent.

    If your system is that fucked, I would wipe it and start over. And don’t run any scripts or extra setup guides, they’re not necessary.

    Personally I run all my containers in a Debian VM because I haven’t bothered migrating them to anything proxmox native. But gpu accel should work fine if you follow the directions from jellyfin: https://jellyfin.org/docs/general/post-install/transcoding/hardware-acceleration/

    Just make sure you follow the part about doing it in docker.

    • LazerDickMcCheese@sh.itjust.worksOP
      link
      fedilink
      English
      arrow-up
      1
      arrow-down
      2
      ·
      12 days ago

      That’s where I’m at, dude. I bought into the idea of Proxmox because I was led to believe that it makes docker deployment easier…but I’m thinking it would actually work if I just used a VM

      • AbidanYre@lemmy.world
        link
        fedilink
        English
        arrow-up
        7
        ·
        12 days ago

        Like docker directly on proxmox? Docker on proxmox isn’t going to be any better than docker on anything else.

        VMs and LXC are where proxmox has its best integration.

        Docker in a VM on proxmox, while maybe not the recommended way of doing things, works quite well though.

      • frongt@lemmy.zip
        link
        fedilink
        English
        arrow-up
        2
        ·
        12 days ago

        I don’t know if containers on proxmox is easy, but containers in a Debian VM is trivial.

  • Tinkerer@lemmy.ca
    link
    fedilink
    English
    arrow-up
    3
    ·
    edit-2
    11 days ago

    I run jellyfin on an LXC, so first get jellyfin installed personally I would separate jellyfin and your other docker containers, I have a separate VM for my podman containers. I need jellyfin up 100% of the time so that’s why its separate.

    Work on the first problem, getting jellydin installed I wouldn’t use docker, just follow the steps for installing it on Ubuntu directly.

    Second, to get the unprivileged lxc to work with your nas share follow this forum post: https://forum.proxmox.com/threads/tutorial-unprivileged-lxcs-mount-cifs-shares.101795/

    Thirdly, read through the jellyfin docs for hardware acceleration. Its always best practice to not just run scripts blindly on your machine.

    Lastly take a break if you can’t figure it out, when I’m stuck I always need to take a day and just think stuff over and I usually figure out why its not working by just doing that.

    If you need any help let me know!

    • LazerDickMcCheese@sh.itjust.worksOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      edit-2
      11 days ago

      So I got Jellyfin running last night as an unprivileged LXC using a community script. It’s accessible via web browser, and I could connect my NAS. Now I’m having NAS-server connection issues and “fatal player” issues on certain items. I appreciate the support, I’m going to need a lot of it haha

  • 4am@lemmy.zip
    link
    fedilink
    English
    arrow-up
    3
    ·
    12 days ago

    It may be better now but I’ve always had problems with Docker in LXC containers; I think this has to do with my storage backend (Ceph) and the fact that LXC is a pain to use with network mounts (NFS or SMB); I’ve had to use bind mounts and run privileged LXCs for anything I needed external storage for.

    Proxmox is about managing VMs and LXCs. I’d just create a VM and do all your docker in there. Perhaps make a second VM so you can shuffle containers around while doing upgrades.

    If you plan to have your whole setup be exclusively Docker and you have no need for VMs or LXCs, then Proxmox might be a bunch of overhead you don’t need.

    I use the LXCs for simple stuff that does a bare-metal type install within them, and I use the VMs for critical services like OPNSense firewall/routers. I also have a Proxmox cluster across three machines so I can live-migrate VMs during upgrades and prevent almost any downtime. For that use case it’s rock solid. It’s a great product and it offers a lot.

    If you just need a single machine and only Docker, it’s probably overkill.

    • LazerDickMcCheese@sh.itjust.worksOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      11 days ago

      Well, the plan was to use a couple VMs for niche things that I’d love to have and many services. But if I can’t get Proxmox working as advertised, I’ll throw most of that out of the window

      • 4am@lemmy.zip
        link
        fedilink
        English
        arrow-up
        1
        ·
        11 days ago

        The easiest solution if you want to have managed VMs IMHO is to just make a large VM for all your docker stuff on Proxmox and then you get the best of both worlds.

        Abstracting docker into its own VM isn’t going to add THAT much overhead, and the convenience of Proxmox for management of the other VMs will make that situation much easier.

        LXC for docker can be made to work, but it’s fiddly and it probably won’t gain you much in the long run.

        Now, all these other issues you seem to be having with the Proxmox host itself; are you sure you have networking set up correctly, etc? curl should be working no problem; I’m not sure what’s going on there.

        • LazerDickMcCheese@sh.itjust.worksOP
          link
          fedilink
          English
          arrow-up
          1
          ·
          11 days ago

          That’s good to know at least. I was getting anxious last night thinking that I signed up for something I’d never get running. So curl is working now…not sure why it wasn’t earlier, but I’ve used it since and it is confirmed working. And networking (as in internet connectivity) is working, but now I’m struggling with the NAS mount: it was working perfectly at first, but now it’s randomly shifting between “available” and “unknown”.

  • randombullet@programming.dev
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    10 days ago

    I am running Jellyfin in an Open Media Vault VM on top of Proxmox.

    Jellyfin is in docker in OMV.

    All disks are mounted in OMV and then mounted in Docker.

    I have a 14600k that has an iGPU passthrough and it works fine. (Same generation iGPU I think)

    mkdir /lib/firmware/i915/
    cd /lib/firmware/i915/
    wget https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/i915/adls_dmc_ver2_01.bin
    wget https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/i915/tgl_guc_70.bin
    wget https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/i915/tgl_guc_70.1.1.bin
    wget https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/i915/tgl_huc.bin
    update-initramfs -u
    

    Then try this docker container to see if encoding works

    docker run --rm ghcr.io/linuxserver/ffmpeg ffmpeg -hwaccels
    

    Run the container

    docker run --rm \
      --device /dev/dri:/dev/dri \
      --entrypoint ffmpeg \
      ghcr.io/linuxserver/ffmpeg \
      -init_hw_device qsv=hw:/dev/dri/renderD128 \
      -hwaccel qsv -hwaccel_device hw -hwaccel_output_format qsv \
      -f lavfi -i testsrc=duration=3:size=1280x720:rate=30 \
      -vf 'format=nv12,hwupload=extra_hw_frames=64' \
      -c:v h264_qsv -f null -
    

    I’m on mobile so formatting maybe shit. But I think you can get the right idea with this.

    • LazerDickMcCheese@sh.itjust.worksOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      10 days ago

      So I starting this post with many intertwining issues, but most of them have been resolved thanks to extensive help. At this point, most of my issues are Jellyfin-specific so I made a new post in c/jellyfin. But thank you, I’ll be trying your method if mine continues to fail me

  • ryokimball@infosec.pub
    link
    fedilink
    English
    arrow-up
    1
    ·
    12 days ago

    There is a helper script for jellyfin LXC. From memory I can’t help much, but I suggest searching for that. I think the default specs for disk space and RAM were weak, But setup was easy enough. After the initial helper script, you will need to learn how to mount the NAS into the LXC as well.

    • ryokimball@infosec.pub
      link
      fedilink
      English
      arrow-up
      1
      ·
      12 days ago

      I want to say iGPU makes things easier, not because of experience but only because I tried passing through an Nvidia card and the instructions all insinuated this was more difficult than any other option