Hi everyone, I’m planning to experiment with my first home server (jellyfin,nextcloud,bitwarden etc) running on a “old” Thinkcentre i5-7th. I’m thinking using proxmox in order to experiment with different configuration and I was wondering if it’s possible to have a single container/vr (with Libreelec) output HDMI to my TV, and keep other VM’s headless and controlled from another PC when needed.

Are there some particular setting or nwebie suggestion that could help me achieve that? Also, do you think proxmox is a good choice, or it’s better stick to a single debian/ubuntu server OS?

  • snekerpimp@lemmy.world
    link
    fedilink
    English
    arrow-up
    8
    ·
    1 year ago

    What you are looking for is gpu pass through. You can do it with integrated graphics as well as dedicated. There is a lot of good documentation out there for proxmox to do this.

    I would totally start with a hypervisor. The ability to spin up a new VM for an experiment or project far outweighs any downside. I use proxmox, but that’s mainly because it was the thing to do when I was starting out. There are a few options out there, including installing Debian and running kvm/qemu, which is basically what proxmox is. They all have the same functionality, just different UI/features. Lxc containers in proxmox help a lot as well, when you have a small service you want to run but don’t want to take up a VMs worth or resources. These also helped a lot.

    Good luck

    • dragnet@kbin.social
      link
      fedilink
      arrow-up
      3
      ·
      1 year ago

      Just gonna add a bit here. I haven’t used proxmox, but I do have a GPU I assign to QEMU/KVM virtual machines. The arch wiki has an article that helps a lot, for anyone who wishes to try this. I have also found that the virgl drivers allow for sufficient graphical performance for video decoding at high resolution, so that is another potential option to explore here that doesn’t involve allocating the GPU to a VM.

      • snekerpimp@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year ago

        I ran an Ubuntu server with qemu and virtmanager as my first set up, because I wanted to learn how it worked at the core rather than just learning the cut and paste of most proxmox tutorials. Ran it for about a year before I switched over to proxmox, brought all my VMs as well.

    • madeofstown@sedd.it
      link
      fedilink
      English
      arrow-up
      1
      arrow-down
      4
      ·
      1 year ago

      It’s important to note that you will need 2 GPUs ( 2 PCIE or 1 integrated and 1 PCIE). One GPU is needed for Proxmox and the other can be passed through to the VM.

      • snekerpimp@lemmy.world
        link
        fedilink
        English
        arrow-up
        5
        ·
        1 year ago

        If you are running a hypervisor, running headless would be perfectly ok with a webui or remote utility like virtmanager. I was making the assumption OP was not doing this on a main rig.

      • Sethayy@sh.itjust.works
        link
        fedilink
        English
        arrow-up
        4
        ·
        1 year ago

        Surprisingly this isnt actually needed. It makes it easier to setup, but isnt required beyond that (and some bios need one plugged in to boot but that won’t be an issue).

        My current setup is 2 nvidias both passed through to separate VMS, then I just use another PC to access the web console. My ideal setup would be a VM that launches itself when none else are running, to allow a graphical output even with the host headless

      • rudy@lemmy.world
        link
        fedilink
        English
        arrow-up
        2
        ·
        1 year ago

        No, you can replace the distro to any that proxmox will support and that has lightdm, you just need to modify the 2nd installation script also as it uses Ubuntu packages for Kodi. The easiest it should be for apt based distributions. But actually the heavy lifting that those scripts do is around passing throughout devices especially in Unprivileged mode, which is tricky in lxc. So you could remove or even allow to fail the apt parts and install what you need manually in the container after creation.

  • Rand0mA@lemmy.world
    link
    fedilink
    English
    arrow-up
    3
    ·
    edit-2
    1 year ago

    I did this with proxmox. However I’m using a Nvidia gpu for passthrough. Was awhile ago I set it all up. I remember it being fairly complex. Here is a super basic instruction for it. Possibly incomplete.

    Check you have iommu enabled in efi/bios. (For Intel - enable vt-d)

    Install drivers if necessary (again nvidia)

    Blacklist device on proxmox host

    Setup GPU passthrough (vfio) - assign the card video and audio to the guest vm.

    Start vm and test

    If you are using onboard card, you can probably blacklist it and use it for your vm… I’m not entirely sure how proxmox deals with losing its primary display… I expect it’ll cope ok. SSH for everything. Probably need to use virtio drivers. Install within guest…

    Really… prob best hosting a media server and having a client on the TV end.

  • mindfive@lemmy.world
    link
    fedilink
    English
    arrow-up
    3
    ·
    1 year ago

    Last time I had a vm with physical output was years ago, and it was an involved process. The thing you are looking for is PCI pass-through. Unless you are thinking closer to just running something like virtual box full screen?

    Did you need your server to have hdmi output instead of running a normal jellyfin client? Would you consider a desktop os running server containers in docker or podman?

  • stooovie@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    VM or container? VM is easier and can be usually configured even via Proxmox GUI (Hardware - Add PCI). Various OSes need various levels of effort. Some Linux distros don’t need any more config, Windows on the other hand required a custom GPU ROM on my system to work.

    This can be done even with a single GPU, even the built in iGPU.

  • candyman337@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    arrow-down
    1
    ·
    1 year ago

    Never tried anything line that before but I feel like you’d be better off setting up VNC for it and connecting something lightweight to your TV and just interacting with the VM via VNC

  • WeirdGoesPro@lemmy.world
    link
    fedilink
    English
    arrow-up
    2
    arrow-down
    2
    ·
    1 year ago

    What are you trying to display on the TV? I feel like most media can be handled better with something like PLEX rather than directly displaying it with an HDMI cord. Much easier to browse with a remote anyway.

    • tburkhol@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      If you want to see anything on a ‘dumb’ TV, at some point there’s going to be an HDMI cord involved. Sounds like OP wants his old computer to be both a home server and an HTPC. Personally, I’d just run qemu or docker on the HTPC, but there’s no reason he can’t run both plex and libreelec/kodi as vms or containers on the same machine.

      • WeirdGoesPro@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year ago

        I get all that, and I wasn’t trying to suggest HDMI cords are useless. I just got the feeling that there was a cleaner way to accomplish what OP was trying to do since there were scant details about the end result in the post.

        I ran a computer directly to the television for years before switching to PLEX and an Apple TV, hence the suggestion—the user experience increased so significantly that I would never go back.