3 ms·
Late 2013 MacbookPro, 16gb ram, 512gb ssd. I do all my development in a VirtualBox 5.1 Ubuntu VM. I keep my host OS 100% free of any development stuff now. Ju
by brobinson 10y ago
Late 2013 MacbookPro, 16gb ram, 512gb ssd. I do all my development in a VirtualBox 5.1 Ubuntu VM. I keep my host OS 100% free of any development stuff now. Just SSH in and let rip.
macOS seems to be more stable under this setup, and if I need any tools I'd normally get from homebrew on the host (say, I want to download a Youtube video using youtube-dl) I just do it in the VM into a shared folder.
I'll probably replace this laptop when it dies with the HP Z2 Mini which was on HN a week or two ago running Linux directly since I want more than 16gb ram and Apple doesn't think that's worth supporting.
- merrickread 10y agoWe're in the process of harmonizing our entire team (9) to use Vagrant in a VirtualBox. For the most part it works, but we run into issues regarding VB memory consumption crashing machines. Minimum 8gb ram machine. Do you have any advice on how to keep the memory footprint low?
- brobinson 10y agoAre you using 5.1.x? It had a ton of performance improvements over 5.0.x and earlier. I regularly run 30-40 VMs at once on my dev server at work (40 cpus, 384gb ram), and I haven't had any problems like this there or at home...
- merrickread 10y agoAmazing, we are using 5.0.x I'll see if that helps. Thank you!
- brobinson 10y agoAnother random thing I just remembered: if you're doing work in the VMs that is heavy on network I/O, try turning GRO off. We saw a big performance increase by doing this: https://github.com/contiv/volplugin/blob/master/Vagrantfile#L272-L278 https://github.com/contiv/volplugin/blob/master/Vagrantfile#...
- brobinson 10y agoOne other thing: VirtualBox 5.1 is only supported by Vagrant 1.8.5 and newer, but 1.8.5 has a 100% showstopper bug where the SSH key inserted into the VM is not chmod'd correctly and OpenSSH refuses to look at it. Use 1.8.6 or newer instead.
- tejaswiy 10y agoThat is interesting since I do almost the exact opposite of what you do. I hate VMs and SSH sessions for dev work with a passion. I have a powerful linux desktop box that I run my builds on, and a light weight 13" 2015 Macbook Pro to connect to it. I check-out the code onto my linux box and scp it down to my Mac (ignoring source control folders) and subsequently use rsync to keep both the boxes in sync (there's an Atom plug-in that rsyncs every time you save). I get native OSX performance as I edit code and I get to run fast builds on my desktop, so it's a pretty nice win-win scenario as far as I'm concerned.
- brobinson 10y agoThat's funny! I do all my dev work in emacs so it doesn't matter to me if I'm working locally or using SSH. :) I was very against running VMs for development until I tried it again a few months ago. Have you considered just keeping your code on the desktop and mounting it to your OSX host via NFS? I was doing this up until recently (was running Atom instead of emacs) and it worked really well. Might be an option if your latency is low enough. I actually tried "desktop Linux" last weekend to see if I could just ditch OSX entirely. The first experience I had was that the mouse cursor in 16.10 does not move in the installer and livecd boot. I installed 16.04, played with a bunch of the desktop environments, and was ultimately unhappy with the feel of them. They're just too alien and inconsistent compared to OSX. I'm probably just going to keep the current setup until this MBP dies, then I'll get whatever the best Mac Mini equivalent is (HP Z2, Intel Skull Canyon, etc.) and switch to Linux finally.