this post was submitted on 31 Jul 2023
31 points (89.7% liked)

Selfhosted

40344 readers
930 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 1 year ago
MODERATORS
 

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?

all 21 comments
sorted by: hot top controversial new old
[–] snekerpimp 8 points 1 year ago (2 children)

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

[–] [email protected] 3 points 1 year ago (2 children)

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 1 points 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.

[–] [email protected] -3 points 1 year ago (2 children)

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 5 points 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.

[–] [email protected] 4 points 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 5 points 1 year ago (1 children)

Hi I did that for Kodi, still using it and running in parallel other LXCs on the same machine. Scripts: https://github.com/mrrudy/proxmoxHelper Hope it helps.

[–] [email protected] 1 points 1 year ago (1 children)

Nice! Is Ubuntu mandatory?

[–] rudy 2 points 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 3 points 1 year ago* (last edited 1 year ago) (1 children)

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.

[–] [email protected] 1 points 1 year ago (1 children)

Random question, but proxmox has a display usually? what's it even look like lol, the website has everything you could ever need

[–] [email protected] 2 points 1 year ago (1 children)
[–] [email protected] 1 points 1 year ago

Yk shoulda guessed, thanks!

[–] mindfive 3 points 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?

[–] [email protected] 2 points 1 year ago

Yes and quite simple if your equipment supports it, the other VMS will not have access to the GPU if you do that.

[–] stooovie 1 points 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 0 points 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 0 points 1 year ago (1 children)

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 1 points 1 year ago (1 children)

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 1 points 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.