Hacker News new | ask | show | jobs
by Jtsummers 2180 days ago
What's your preference instead of Docker? Just run everything on the same host OS? Nix? More conventional VMs? Servers with specific configurations?
2 comments

When possible I want to run my apps on OSX. It’s not always possible, but usually works.

The scripting environment managers have made big improvements in the past few years. Nvm/virtualenv/rvm give me 90% of the docker value prop with none of the performance impact or debug hassle.

Haskell/clojure/java all seem platform agnostic out of the box.

C/C++ is probably still a hassle with libs being platform specific.

The question is, why docker have that overhead. Virtualizing should not be very resource-intensive nowadays, everything is optimized at CPU level.
It's not that simple as "everything is optimized at CPU level," actually. Virtualization has very different performance impacts on different workloads.
Virtualization has pretty high overhead.

But on the Mac you have to pay the virtualization overhead to run Linux in a VM, then compound the docker overhead on top of that.

On MacBook Pro this is problematic because it eats battery and contributes to thermal problems.

Forgot to mention that disk performance on docker on the Mac is a big deal for building software.

This article shows overhead for a disk heavy workload: https://vivait.co.uk/labs/docker-for-mac-performance-using-n...

He gets 7 second load time natively, but a 56 second load on docker with inconsistent drive link.