Quick overview of my setup: Synology NAS running a whole bunch of Docker containers and a couple of full blown VMs, and an N100 based mini PC running Ubuntu Server for those containers that benefit from hardware acceleration.
On the NAS I have a Linux Mint VM that I use for various desktoppy things, but performance via RDP or NoMachine and so on is just bad. I think it’s ultimately due to the lack of acceleration, so I’d like to try running it from the mini PC instead but I’m struggling to find hypervisor options.
VirtualBox can be done headless, apparently, but the package installed via Apt wants to install X/Wayland and the entire desktop experience. LXC looks like it might be a viable option with its web frontend but it appears to be conflicting with Docker atm and won’t run the setup.
Another option is to redo the machine with UnRaid or TrueNAS Scale but as they’re designed to be full fledged NAS OSes I don’t love that idea.
So what would you do? Does anyone have a similar setup with advice?
Thanks all!
Edit: Thanks for everyone’s comments. I still can’t get LXC to work, which is a shame because it has a nice web frontend, so I’ll give KVM a go as my next option. Failing that I might well backup my Docker volumes, blat the whole thing and see what Proxmox can do.
Edit 2: Webtop looks to be exactly what I was looking for. Thanks again for everyone’s help and suggestions.
You’re overthinking this. You don’t need an actual VM for services. Containers are fine. If you’re worried about security, go down the Katanor gvisor rabbithole, but you definitely don’t need an entire OS and VM running for simple services.
There’s no reason containers can’t be hardware accelerated. I’m confused by what that statement means.
I’m using plenty of containers, accelerated and otherwise, but I also want a full-blown desktop that I can access from wherever. Even on a wired LAN, streaming that desktop is slow and laggy when it’s hosted on my NAS, which I think is due to the lack of hardware acceleration on that system. I want to move the VM to a host that has that feature (currently running Ubuntu Server) but I need a hypervisor that doesn’t require its own desktop system to be installed in order to manage it.
Plenty of good replies here to help me though.
Give webtop a try? Granted I haven’t tried anything heavy on it, but it’s been performant enough for me. Here’s a compose file if it stays formatted correctly:
services:
webtop:
image: lscr.io/linuxserver/webtop:latest # alpine - xfce
# other tags with different bases and desktops: https://github.com/linuxserver/docker-webtop
container_name: webtop
#security_opt:
# - seccomp:unconfined #optional
environment:
- PUID=1000
- PGID=1000
- TZ=America/Los_Angeles
- TITLE=my_desktop #optional
volumes:
- config:/config
#- /var/run/docker.sock:/var/run/docker.sock #optional
ports:
- 3000:3000
- 3001:3001
restart: unless-stopped
volumes:
config: {}
networks: {}
You want KVM.
But I’d check the performance on the NAS first. They’re not really built for VMs so you might be missing hardware features, but I’d check resource usage to see if you’re maxing anything out. And try reducing resolution, color depth, etc. to make it easier.
Why would this person want KVM? They don’t need anything a full VM provides, they’re just trying to run many services easily on a single host.
Well indeed, that’s why I want to move the VM off the NAS and onto something with some hardware acceleration. Are there any remote frontend options for KVM?
Should ask what platform here, IMO: virt-manager is Linux-only. (Or, I suppose, doing remote X stuff to run it elsewhere but that’s probably not what OP is after.)
There’s some command line stuff you can run on Windows, but then at that point, you can just use virsh on the host itself.
I’m of the opinion that virsh to manage and then a spice or vnc client to access the VMs is the “best” way to go so you’re not tied down to having to have a specific OS running a specific tool in order to do any admin stuff, since I mean, after you deploy how often are you screwing with the VM settings?
Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I’ve seen in this thread:
Fewer Letters | More Letters |
---|---|
NAS | Network-Attached Storage |
SSH | Secure Shell for remote terminal access |
VNC | Virtual Network Computing for remote desktop access |
3 acronyms in this thread; the most compressed thread commented on today has 4 acronyms.
[Thread #976 for this sub, first seen 17th Sep 2024, 11:25] [FAQ] [Full list] [Contact] [Source code]
I’ve heard good things about Proxmox, but I have no direct experience with it. That would be a separate box that manages the VMs and everything, and it has a remote GUI option (webpage I think?).
If you want something on an existing box, just use KVM directly, or a simple frontend like GNOME boxes. I don’t know about remote configuration, but once it’s set up, do you really need to check in on things remotely? KVM will do hardware acceleration (definitely CPU acceleration, GPU if you configure it properly), and it has no GUI by default.
It uses some form of VNC (forget the name). Performance is fine for the VMs for non-video stuff.
You can run whatever you want inside a VM too.