Basics of Proxmox LXC Templates, GUI and Remote Clients

Hi am a Linux newbie and i only decided to start educating myself on Linux distros as recently as Dec of last year so ya :laughing:

So i’ve been watching youtube videos on Proxmox and i think i am ready to narrow down to 3 linux distros when i finally move away from Windows but i can see how a Windows VM in Proxmox could accelerate that haha I have succeeded in setting up Windows VM albeit a really crude/simple one w/o GPU pass through (yet) but i am really clueless about containers and remote client GUI :cold_sweat:

Anyway excuse my somewhat rudimentary questions as i said am new to linux and even more clueless about Proxmox, containers, etc so feel free to dumb it down for me to grasp ya!

#1 According to Proxmox instructional videos i’ve seen these LXC Linux templates are just the OS w/o any Desktop Environment correct? So one has to install an x.window manager/server separately?

#2 If i install 3 linux distros LXC templates on my machine with Proxmox can a single x.server be the GUI for all 3? suppose all 3 distro are of the same flavour/DDE like KDE Plasma?

#3 Ok possible scenario. One main machine has Proxmox with 3 linux distro LXC templates installed. Just as an example : can other machines in the same network run apps simply by having x.server/window manager in a thumb drive (no hdd/ssd/nvme on client machines) installed? Would there be any lag?

#4 Suppose #3 is possible. The machine doing all the heavy lifting/processing is the LXC Template server right? I understand containers are far easier resource wise than VMs but can this LXC Template server using non enterprise class parts (maybe a ryzen 7?) serve say 6-8 clients simultaneously? What if they are fat clients? Can the heavy lifting/processing be offloaded/done by fat clients?

Do correct me if some/all of my assumptions or understanding of concepts are flawed or wrong ya! Even the technical terms i get mixed up i confess haha Am definitely keen to learn and understand stuff in the linux world better ^^

Also keep up the good work both in forums and youtube channels! I learn or at least expose myself to so much stuff just by reading and watching haha

Correct.

AFAIK, with LXC, there is no video out, so even if you install a GUI it will not work. It is possible to pass through parts of an Nvidia GPU, but this only gives you the compute functions (CUDA, etc), not the graphics/video part.

A full virtual machine is what would allow you to run an x server in the guest operating system. They have emulated video devices, or as you mentioned you can pass through an entire host video card to a VM.

X11 over the network is possible, but it is really not an ideal way to run things day to day. It is really heavy on network bandwidth, and is still slow.

If you are talking about people remoting in for command line work (over SSH), then yes, you can have a bunch of people logged in at once. I mean, old mainframes that are less powerful than a ryzen 3 could have lots of people logged in at once.

But for a home use case, I am not really sure what most people would need to log in to a remote server for, that cannot be done better on their local machine. If it is data centralization, then that can be better served generally by making the server a NAS type box, so they do their work on their local machines, and save it on the server, network shares or nextcloud or say a git repository depending on the type of work.For business, data security and whatnot might mean it is useful.

1 Like

Ah ok ic - well for now its purely for understanding concepts/how it all works rather than applying immediately for a real case scenario ^^ I was thinking of how one could create a personal “Azure Cloud” where one or more OS (VMs) is centralised in a server and multiple clients using apps or client software could log in to them on an as to need to basis or for educational purposes perhaps? Can one “containerise” VMs then have clients run apps/software off than VM? From what i understand containers are virtualisation of the OS as opposed to the hardware for VMs? Say Server VM/s + Docker daemon installed accessed by clients with Docker client software?

Are you talking about logging in by the command line? Or logging in remotely via RDP or teamviewer or some other remote desktop software? Or running web applications on the server, and having people use the applications from a web browser, so something like google drive/docs/etc?

Kind of. The lines get a bit fuzzy, especially since buzz words abound.

Full system emulation is kind of one extreme, and a chroot is the other end of the spectrum. Containers use the same kernel as the host, while a virtual machine boots up a new kernel, and AFAIK that is dividing line.

1 Like