Do you have always running VMs on your workstation? If yes, what’s running on them? reddit / selfhosted ---------------------------------------------------------------------- nithinbose · 2023-11-26 22:10 To clarify I am not asking about a dedicated machine running something like Proxmox or Esxi. My question is about VMs running on your daily use machine on something like VirtualBox, VM ware fusion, parallels etc ---------------------------------------------------------------------- ArgoPanoptes · 2023-11-26 22:19 Nothing particular. Usually, I use Vagrant to spin VMs when I need to test some solutions. ---------------------------------------------------------------------- ttkciar · 2023-11-26 22:29 My work-from-home workstation always has a VM or two running the test/dev environment for the tasks I'm working on at work. They are VBox instances provisioned/managed by Vagrant. They are CentOS7 instances, each running a test database, usually a text editor, "tail -F" monitoring log output, and various daemons/services specific to my workplace's internal infrastructure. The host system is running Slackware 15.0. ---------------------------------------------------------------------- nithinbose · 2023-11-26 22:34 That’s how I use VMs as well. ---------------------------------------------------------------------- nithinbose · 2023-11-26 22:42 So is this like a db snapshot from your work? Why not use something like Dev containers? Is it because of the bundled internal services? ---------------------------------------------------------------------- Still-Snow-3743 · 2023-11-26 22:46 I'm running an ubuntu server in hyperv behind my windows 11 install on my laptop, just so i can use btrfs with snapshots, compression, and deduplication for my media/data filesystem. But I'm crazy so idk ---------------------------------------------------------------------- EndlessHiway · 2023-11-26 22:49 Yes. Stuff. ---------------------------------------------------------------------- nithinbose · 2023-11-26 22:53 And I thought I was the only crazy one. Can you tell me more about your data file system? Is it a disk pass through to the VM? How do you access media/data in this VM? ---------------------------------------------------------------------- zoredache · 2023-11-26 23:08 If you count WSL2 as a VM, then yes. I always have that running with a couple services. ---------------------------------------------------------------------- Impressive-Cap1140 · 2023-11-26 23:15 Similar situation. How else am I supposed to learn with limited hardware and my daily driver is Windows for work purposes? ---------------------------------------------------------------------- Cylian91460 · 2023-11-26 23:19 Currently I'm modding an unreal engine game and some tools is not available on Linux (fucking DotNet) ---------------------------------------------------------------------- ttkciar · 2023-11-26 23:20 The test db mostly contains synthetic datasets for reproducable integration testing. Reviewing https://containers.dev/overview "dev containers" seem to target the same niche as Vagrant. Without more familiarity I couldn't say whether one might be better than the other, but so far Vagrant has suited our department's needs nicely. ---------------------------------------------------------------------- Still-Snow-3743 · 2023-11-26 23:27 woot, crazy people unite! On my 4 tb laptop ssd, i have 3.5 tb allocated to an ubuntu vm which itself is all one big btrfs volume. I access the file system through mapped network drives to the samba server running in linux. I have my desktop and documents folders mapped into the VM. I have a powershell script that on login, waits for the machine to become accessible, then force restarts explorer.exe so if I login to windows before the VM is ready, the restart of explorer.exe gets the desktop items / icons showing. On the VM itself I have syncthing synchronizing all the data to my home server. The home server does daily deduplication and backups, and the laptop VM also does 1 week of snapshots via snapper and deduplication via duperemove daily. duperemove and syncthing are limited to one processor core as to not overwhelm the laptop. The whole goal of this is that since I am using deduplication on my home server, I will often have redundant copies of files or directories just because they don't cost any extra disk space. So taking a snapshot of an entire directory is just as simple as copy and pasting it somewhere. On the laptop I have enough space that I can take a copy of all my important documents with me as I travel, but I rely heavily on deduplication to make that work, and NTFS doesn't have dedup. One day windows will support ReFS and do this sort of thing natively, but since we aren't there yet, a always running linux vm does the trick. With how fast computers are and how little overhead a console only VM has, it barely impacts my day to day usage, and I can mostly forget that the VM is even running. ---------------------------------------------------------------------- Still-Snow-3743 · 2023-11-26 23:31 The only real way I learn anything is by having a goal of some sort and then working through accomplishing that goal. I find home automation has been an excellent carrot on a stick for me to learn a lot of the more interesting stuff. ---------------------------------------------------------------------- Outrageous_Plant_526 · 2023-11-26 23:55 You do realize DotNet is available on Linux right? ---------------------------------------------------------------------- Cylian91460 · 2023-11-26 23:56 DotNet runtime yes, framework no. ---------------------------------------------------------------------- bobbyorlando · 2023-11-27 00:00 WSL2 Ubuntu and today I installed Linux Mint with VMWare to play around a bit and I like it. ---------------------------------------------------------------------- Outrageous_Plant_526 · 2023-11-27 00:02 DotNet Core is available which includes many of the framework libraries. Winforms is one of the biggest missing though. ---------------------------------------------------------------------- NikStalwart · 2023-11-27 00:19 So on my workstation / daily driver box: * I have Docker using the WSL2 backend. I use this instance of docker to test deployments of software before I push it to my remote servers, to perform local development tasks, and to host some services that I only ever use when my PC is on (so services that require trust and don't require 24x7 uptime). * I have about 8 distros of linux in WSL2. * The main distro is Ubuntu 22.04 for legacy reasons. I use this to host an nginx server on my machine (use it as a reverse proxy to my docker services running on my machine) and to run a bunch of linux apps, including GUI ones, without rebooting into my Arch install. * I have two instances of Archlinux. One is 'clean' and is only used to mount my physical arch disk if I want to do something quick without rebooting into Arch, and the other one I actively tinker with. * Other distros are just there for me to play with * I use HyperV (since it is required for WSL) to orchestrate Windows virtual machines. Yes, I do use Windows VMs on Windows host. Why? Software testing, running dodgy software in an isolated environment, running ~~spyware~~ *I mean Facebook*, and similar. * Prior to HyperV, I used to use Virtualbox. I switched to hyperv when I started using WSL. For a time, hyperv was incompatible with any other hypervosor on the same host so I dropped virtualbox. That seems to have been fixed now, and I reinstalled virtualbox to orchestrate Oracle Cloud VMs as well. ---------------------------------------------------------------------- Willekur · 2023-11-27 00:26 I used to run a multipass vm in the background with an installation of bookstack (system to write documentation in), used it personally for a while until I convinced the company to start using it for documentation as the system they were using was unworkable. Moved away from the VM when I got permission to set it up properly on kubernetes. ---------------------------------------------------------------------- ilikestreet · 2023-11-27 00:33 I'm running gaming windows over Linux desktop. I use arch BTW. ---------------------------------------------------------------------- LightShadow · 2023-11-27 01:08 I have Ubuntu 16 VMs running old versions of our app so I can test against the new stuff. ---------------------------------------------------------------------- codecarter · 2023-11-27 01:28 I have vm running on my daily laptop running vmware workstation. using it to host my docker rss feed and my docker notes application (trilium notes). I knew I wasnt the only one. UNITE!!! ---------------------------------------------------------------------- peschelnet · 2023-11-27 01:30 Yes. On my R710 Plex running on an Ubuntu VM Ark Server on Windows 10 VM DayZ Server on Windows 10 VM Rust Server on Windows 10 VM NextCloud UCS Server Windows Server 2016 Ubuntu 20 LTS MineOS (minecraft) ---------------------------------------------------------------------- nithinbose · 2023-11-27 01:47 Thank you, my crazy friend. I am making a simpler version of this for sure. But I gotta ask, why not just switch to Linux? Why are you stuck on windows? ---------------------------------------------------------------------- Still-Snow-3743 · 2023-11-27 01:51 I've used Linux as a primary desktop for basically the last 15 years, and I use linux on my home server. Me and most hacker types I know have switched to windows in the last couple years as our daily drivers. Windows 11 + WSL is basically as good as linux but without any of the headaches. Gone is the days where windows was unstable or feature incomplete. With the exception of deduplication, Windows 11 does everything that my linux cinnamon install did, but frankly is more stable and has a better user experience. ---------------------------------------------------------------------- Jonteponte71 · 2023-11-27 01:58 Vagrant is great for creating and spinning up VM’s fast. I love it. ---------------------------------------------------------------------- nithinbose · 2023-11-27 02:29 Cool I get what you are saying, in the sense that I consider Mac to be a “Linux without the fuss”, everything just works. ---------------------------------------------------------------------- justinrlloyd · 2023-11-27 05:24 On my workstation I run ESXi, and then I have Win10 (for personal development work and games), Win10 (for work development), macOS (for testing stuff), kubuntu (for personal dev), ubuntu server (for personal dev), and then WSL2 in Win10 and a couple of containers of course for just run-of-the-mill stuff. Those VMs are on and running pretty much all the time. Nothing critical to infrastructure, that's hosted on dedicated server machines. ---------------------------------------------------------------------- steveiliop56 · 2023-11-27 06:02 I run wsl with Ubuntu for some development ---------------------------------------------------------------------- Cl4whammer · 2023-11-27 06:25 Hyper-v is so underrated. I have at home proxmox, esxi and hyper-v. And most of the time i have less trouble with hyper-v. ---------------------------------------------------------------------- Heclalava · 2023-11-27 06:54 I've got a Windows VM on my Linux Mint for when I absolutely have to use a Windows application. I've got a Debian VM for running a Discord bot on my server running from a bash script. Then I've got Genymotion for Android which also runs in a VM. ---------------------------------------------------------------------- bufandatl · 2023-11-27 06:55 Nope. No VMs. Don’t know why would I if I have a dedicated XCP-NG pool for that. ---------------------------------------------------------------------- archiekane · 2023-11-27 06:57 I have 1 PC and a NAS at home. To simplify work Vs home fun, I have Debian as my main OS and a KVM guest of Debian too. The guest is headless and runs all of my media tools for sailing the seas over a VPN. ---------------------------------------------------------------------- JohnBeePowel · 2023-11-27 07:09 I wanted to have Proxmox run on my gaming desktop but I always have some issues with network passthrough. I thought about doing this to run a lab, for example an AD domain to prepare myself for certification exams. ---------------------------------------------------------------------- Croatwink · 2023-11-27 07:39 Not always, I only have a laptop. But I do have a terraform setup that quickly deploys a gitlab runner on my laptop for when I need it, then I destroy it when I'm done with it. Uses the libvirt provider, a CoreOS image, and ignition to configure and start the runner service immediately. ---------------------------------------------------------------------- Tomnesia · 2023-11-27 09:10 Exactly lol. I was never really good in scripting and it never really clicked with me. Until i started with home assistant and felt the need to write scripts that i can call as a service in home assistant, restarting my servers/containers/stack,.. Home automation is the most joy ive had in years 😂 ---------------------------------------------------------------------- throwawayaway7378372 · 2023-11-27 10:15 Work machine is now a VM on my desktop for better performance than my low spec ultra book. This runs great on VMware workstation ---------------------------------------------------------------------- koloqial · 2023-11-27 10:17 * Plex * CouchPotato * Sonar * SabNZBd * PFSense * PiHole Then on RaspberryPi's: * HomeAssistant * OctoPrint ---------------------------------------------------------------------- nithinbose · 2023-11-27 12:23 I am really curious to know what services you are running. I don't use Windows so unfamiliar with Hyper-V do you pass through your physical arch disk into the VM? Are you able to boot arch from the disk or do you use it to just access the files on the disk? Thanks for your reply. ---------------------------------------------------------------------- nithinbose · 2023-11-27 12:37 Yeah let the crazies UNITE!! I can see myself doing this. By browser based docker app do you mean something like webtop or guacamole? Or just the web interface for an app like freshRSS? Also why not run docker directly on the host machine? ---------------------------------------------------------------------- codecarter · 2023-11-27 12:41 Web interface like freshrss. Funny you say guacamole. Just yesterday I was thinking about running this. ---------------------------------------------------------------------- nithinbose · 2023-11-27 12:50 This is something I am really interested in. So on your workstation, do you work on a VM? If yes, do you have a GPU pass through, with a monitor connected to your VM or do you use some sort of remote access? What are some of the annoyances with working in a VM? Thank you for replying, sorry for the bunch of questions. ---------------------------------------------------------------------- nithinbose · 2023-11-27 13:06 My vagrant use has come down significantly since I started using devcontainers. I almost only use vagrant in cases where I have bundled internal services. It can be done with devcontainers but at the moment, its just too much effort. I use it devcontainers in VS Code. If you use VS code, you can get started by installing "Remote Development" plugin and using one of the provided devcontainer configuration, there are quite a lot of them. ---------------------------------------------------------------------- nithinbose · 2023-11-27 13:18 Don't know if this counts, I used to use arch BTW :D Then moved to an intel mac with an always running arch VM. Moved to an M1 and the arm thing is tripping me up. Maybe someday, I will find time to setup archlinux arm version on parallels. ---------------------------------------------------------------------- nithinbose · 2023-11-27 13:31 VPN in a VM is a great use case, Especially if you bought a cheapo VPN to sail the seas but you don't trust it enough to send your banking traffic through it. I think your ISP is a better bet than a commercial VPN for most really critical stuff. Take into consideration your country/ISP/VPN/threat model etc, of course. On a tangent, I do this on my home server which I use to download linux ISOs, as well. Just for anyone reading this comment there is a cool project called [Gluetun](https://github.com/qdm12/gluetun) which lets you run your vpn in a container and route traffic from other containers through the VPN container. ---------------------------------------------------------------------- nithinbose · 2023-11-27 13:35 This is something I am really interested in. So on your desktop, do you work on a VM? If yes, do you have a GPU pass through, with a monitor connected to your VM or do you use some sort of remote access? A full screened VM window? What are some of the annoyances with working in a VM? Thank you for replying, sorry for the bunch of questions. ---------------------------------------------------------------------- nithinbose · 2023-11-27 13:40 That's cool. What OS are you running on the VM? How do you access these services, only from your workstation or across the home network? Is the machine always on so that you can access your media/PiHole? ---------------------------------------------------------------------- bigmanbananas · 2023-11-27 13:55 OPNSense, WeKan, home assistant, Jellyfin. Photoprism. As the host is always on running the firewall, the energy used by the other lught services is quite minimal. ---------------------------------------------------------------------- Psychological_Try559 · 2023-11-27 14:14 I used to, but once I got a server (my first server was just an old desktop) I moved everything running 24/7 to that. Why wouldn't I? Makes it easier to shut my desktop down and whatnot. ---------------------------------------------------------------------- omniterm · 2023-11-27 14:15 Back at my old job I was able to work from home and they required windows. Using Microsoft HyperV I had 2 windows server 2022 vm's running on my laptop, setup for active directory. I was triple booting windows 10, 11 and Fedora Linux. Both my windows installs were running the vm's and my Windows 11 install was joined to the domain. I had to set the vm's to shut down on system reboot or power off as using the pause feature only worked if the reboot/shutdown returned to the same os. Worked great when it was setup. After I left that job and no longer worked from home I wiped windows and stuck to booting Linux only. ---------------------------------------------------------------------- EndlessHiway · 2023-11-27 14:16 lol ---------------------------------------------------------------------- saxxappeal · 2023-11-27 14:17 I'm running 2 VMs that are always on: the first is Ubuntu and is for my reverse proxy and Nextcloud install, and the second is a VM with custom code to connect and maintain an always on connection to a paid VPN. It might also have qbittorrent installed 🤷‍♂️ ---------------------------------------------------------------------- nithinbose · 2023-11-27 14:32 Cool, you access nextcloud only from your machine or through the network as well? ---------------------------------------------------------------------- saxxappeal · 2023-11-27 14:34 Through the network. Maybe not the most secure but I haven't had any issues to date, the reverse proxy goes a long way. I'm planning to break the whole thing down at the end of the year and reconfigure with a Debian host and Proxmox for VMs and containers. ---------------------------------------------------------------------- nithinbose · 2023-11-27 14:42 Thanks for the reply. That's an awesome plan, enjoy the adventures ahead. ---------------------------------------------------------------------- koloqial · 2023-11-27 14:55 I'm running VMwares ESXi on an dedicated Fujitsu Primergy box (old hardware), it's on 24/7 in the cupboard under the stairs. Plex has it's own app on various devices, smartphone, console, etc. PFSense comes with the ability to setup a VPN connection, so I use that to connect to home when I want to watch stuff on the Plex Server. The Sonar/SabNZBd/CouchPotato is mostly a set and forget thing. ESXi is handy for whenever I want to try something out without busting up any existing VMs I have setup. ---------------------------------------------------------------------- nithinbose · 2023-11-27 15:01 Ah... the post was about VMs running on daily use machines not on dedicated hypervisors. Anyhow, great setup. Enjoy!! ---------------------------------------------------------------------- mkhleel01 · 2023-11-27 15:42 Multipass ---------------------------------------------------------------------- throwawayaway7378372 · 2023-11-27 15:50 VMware Workstation is like using a higher fidelity Remote Desktop. I use it windowed for fast access to the main PC, but you can run it full screen. You can also just use Remote Desktop to the VM if you want. It’s just networking config. It has access to my video card through the hypervisor which is sufficient for me. If you have a decent workstation it flies. NVMe storage helps a lot. I’ve run the same VM on an ESXi box connecting with both Remote Desktop and the VMware workstation client. It’s close but not quite as responsive. You can easily test this with a trial of VMware workstation. ---------------------------------------------------------------------- ilikestreet · 2023-11-27 16:21 Any reason why work around with arm? Raspberry Pi? ---------------------------------------------------------------------- nithinbose · 2023-11-27 17:02 I have an M1 Mac, not many Linux distributions support arm64 ---------------------------------------------------------------------- nithinbose · 2023-11-27 17:14 Thanks for the reply, do you share folders between the host and the VM or do you just use (or copy the files) to the VM’s virtual disk? ---------------------------------------------------------------------- justinrlloyd · 2023-11-27 17:34 "Storm", my big workstation, is pure VMs on ESXi. "Well... fuck!" is bare metal Win10 Pro For Workstations. I work exclusively inside a VM. I use RTX A6000 GPUs shared across all VMs. So any one VM can get the full power of the GPUs if it needs. I am rarely running any loads on the GPUs or the CPUs in other VMs that I am not directly accessing unless I'm running a build or testing something out. The Win10 Pro for Workstation VM and the kubuntu VM both have dedicated USB cards on PCIe pass through, which solves any USB issues. Only issues I run into generally is some random hardware dongle (I'm looking at you SafeNet) detecting it inside a VM and then refusing to do its thing "for security reasons" or a Windows game off of the Steam store suddenly detecting the VM as a cheat mechanism. But then I don't tend to run Fortnite or other games of that ilk, and those kinds of anti-cheat mechanisms will trip over other things too like IDA Pro or Visual Studio being installed on the same machine. If I run in to an issue with a piece of hardware I truly need to work with, I simply plug that into my second workstation. GPU output goes directly to displays and the KVM handles the switching of output to whichever VM (it's a feature of the KVM itself). That doesn't work on the macOS VM because it doesn't have hardware GPU acceleration and the software isn't compatible with macOS anyway, so I simply remote into that with the usual VMWare Player/VMWare Workstation software. A hardware KVM that switches the keyboard, mouse, audio output. I have three Anker USB hubs on my desk. One is plugged into a hardware KVM, the other two go to either Win10 or kubuntu machine. That lets me plug in USB sticks and peripherals and decide if I want them on the KVM or dedicated to the respective machine. Some peripherals are okay with being switched, some don't. Lesson learned, don't plug in a USB memory stick to one machine, start a file transfer, then use the KVM to switch to the other VM, where you effectively hard unplug the USB memory stick from one device and plug it immediately into another. The KVM is plugged into two laptops and two other machines as well. Basically I control six machines through a single KVM. Honestly, if I was doing this all over again, and I am teetering on the edge of just doing it all over again, I would set up "Storm" as my Win10 Pro For Workstations box, and "Well... f!" for kubuntu. And then simply run a few "permanent" VMs inside of VMWare for anything else I need. I over complicated my build because "tech is cool and this is neat" but it doesn't need to be this complex. It was fun to figure it all out, but I wouldn't do it again. ---------------------------------------------------------------------- AnomalyNexus · 2023-11-27 18:22 Proxmox backup server on HyperV Saves me an extra device basically. Occasionally WSL for AI stuff but it’s annoyingly fragile frankly. ---------------------------------------------------------------------- Particular-Way7271 · 2023-11-27 19:37 You can install the dotnet sdk on almost all linix distros ---------------------------------------------------------------------- Cylian91460 · 2023-11-27 19:38 But it's not complete, some libs are missing ---------------------------------------------------------------------- SuprIntendntChalmers · 2023-11-27 19:38 I have my main/gaming rig that I use for everything unrelated to my career, and I run a Hyper V VM on/with it that I strictly use for just my daily job. (Work from home sysadmin for an MSP) The company I work for provided me with hardware that I can connect at home and use, but it's much more convenient for me to get everything done utilizing all of my monitors and gaming hardware and not having to have two physical computers set up. The company doesn't care and I keep the work VM pretty isolated from everything else (well, as much as you can with a Hyper V VM and still get all of the functionality I crave.) ---------------------------------------------------------------------- Bonsailinse · 2023-11-27 20:06 I agree on almost everything you just wrote. And then I need to work with sockets and I want to cry and switch back to anything but Windows. ---------------------------------------------------------------------- throwawayaway7378372 · 2023-11-27 21:06 Either is fine but since it’s a work machine I don’t copy stuff back and forth much. When I use a VMware workstation for dev tasks sometimes I use the file share more but I try to avoid any sharing if there is a local alternative. OneDrive inside the VM is handier than sharing a folder explicitly for my needs. ---------------------------------------------------------------------- koloqial · 2023-11-27 21:48 I completely derped! I have WSL running mostly for a linux command line, but that's on my work machine. ---------------------------------------------------------------------- webtroter · 2023-11-27 22:03 Yes. My main "prod" server was my Hyper-V VM on my gaming machine. I'm in the process of migrating out of it. Or maybe find a nice way to migrate this VM. ---------------------------------------------------------------------- nithinbose · 2023-11-28 00:21 That’s quite a setup. It took a couple of reads just to understand what you wrote ;) But I absolutely love it. I admit I am a bit of a sucker for the tech is cool thing. Thanks for all the details. ---------------------------------------------------------------------- nithinbose · 2023-11-28 00:23 Now I’ll have to check what Genymotion for android is… brb :) ---------------------------------------------------------------------- NikStalwart · 2023-11-28 03:16 So to answer your last question first: I run dual boot Arch+Windows, and I can mount the physical Arch disk inside a WSL VM and then chroot into it to run or fix some things when I CBA to reboot properly. I haven't tried booting a WSL instance off of the physical arch disk but I don't imagine it would work. Firstly, WSL uses a modified linux kernel (which won't be accessible without tinkering with the physical install). Secondly, the physical install is obviously configured for physical ACPI and Network use which will break if I boot into it from WSL. After all, WSL is not a *proper* VM. To answer the first question as to services: notes, kanban boards, network monitoring tools (connected to a VPN / management LAN), databases, more databases, even MOAR databases, database managers, web scrapers, etc. ---------------------------------------------------------------------- NikStalwart · 2023-11-28 03:19 Have you considered a physical KVM switch? If you have, why did you decide against it? Are you doing GPU partitioning? ---------------------------------------------------------------------- nithinbose · 2023-11-28 12:17 Yeah that was my thought too booting from the physical disk usually doesn't work. Just had to ask in case, WSL had something up its sleeve to magically do this, I guess not. Seems like you are a database guy, are they all always running? Thank you for your reply. ---------------------------------------------------------------------- nithinbose · 2023-11-28 12:21 I am surprised, I didn't know about [this](https://www.genymotion.com/) before. Thanks for letting me know. ---------------------------------------------------------------------- SuprIntendntChalmers · 2023-11-29 20:04 There's really no need for a KVM switch, I think having two physical computers to deal with in my case would just complicate things. Running the VM for my work life during work hours and then shutting it down once I'm off the clock is super simple already. As far as GPU partitioning, all of the clients I work with are spending their day working with things like Excel and Outlook, so nothing graphically demanding. ---------------------------------------------------------------------- NikStalwart · 2023-11-30 00:07 Fair enough. I am almost 90 per cent certain that my work won't let me get away with a VM, but heh, who knows.... ---------------------------------------------------------------------- antaresuk · 2023-12-01 13:23 interesting - so of the three which would you recommend if you were re-doing your lab over? ---------------------------------------------------------------------- Cl4whammer · 2023-12-01 14:45 I would keep all three of them because its fun to play with all of them, but my most important vms run on the hyper-v system.