Live data from Hacker News

Docker for Mac Beta Review

medium.com

51–60 of 367 posts

Re: Docker for Mac Beta Review

#51
post #12

Earlier quoted context omitted.

Running a VM means you have to allocate X amount of RAM regardless if how much is actually needed by the containerized processes.

Not necessarily, if I allocate 8GB to a VM, my systems still runs smoothly even when I'm already using 10GB (I have 16GB). One problem is that the VM won't clean up the RAM properly but the swap can handle that quite nicely actually. And I never utilize 16GB of ram, 8 would be more then enough for me and ram is really cheap these days (even on macs).

You must not run more than 1 chrome tab....

Re: Docker for Mac Beta Review

#52
post #31

I've noticed some pretty extreme performance penalties with Docker for Mac. Wherein VirtualBox would spin I'm going to guess it'll get better in time. It would be nice to get some insight into just what is burning CPU cycles. The experience besides that was really top notch IMO.

This is a known issue and they are investigating. For now, when it spikes to 200%+, the only solution is to restart the whole thing.

Re: Docker for Mac Beta Review

#53

Why do people value that so much? I really don't care if a tiny VMis running in the background. Also, running that VM gives me more confidence that it will also run on the production machine (since they use the same kernel and the same docker version). The only problem I had with docker was that I did not use to support shared volumes that are outside the home folder on Mac (I think they changed that now, but I'm not…

Author here.

There is still a tiny VM running. This one happens to be the Native OS X Hypervisor Framework. From the docs:

> Hypervisor (Hypervisor.framework). The Hypervisor framework allows virtualization vendors to build virtualization solutions on top of OS X without needing to deploy third-party kernel extensions (KEXTs). Included is a lightweight hypervisor that enables virtualization of the host CPUs.

https://developer.apple.com/library/mac/releasenotes/MacOSX/...

I've had a great run with VirtualBox, between Vagrant and Docker Machine. But I can't lie, I won't miss its installer, uninstaller, OS X kernel extensions, questionable network file sharing, and more. Removing a big blob of software between me and my virtualization-ready CPU is progress.

Then Docker for Mac is the one-two punch. Simpler virtualization, extremely rich containerization.

Re: Docker for Mac Beta Review

#54
post #50
post #16

Earlier quoted context omitted.

Wait, not even another kind of VM? Have you ever had to work with a team that has an unreliable environment? And had to walk them through debugging an error message for installing one of them, or wanted to add something with further dependencies? (Not to say Docker's immune from that; the sudden deprecation of docker-compose for docker-machine was a nasty surprise.)

>the sudden deprecation of docker-compose for docker-machine was a nasty surprise. I think you meant the deprecation of Boot2Docker?

Sorry, you're right -- got them flipped.

Re: Docker for Mac Beta Review

#55
post #31

I've noticed some pretty extreme performance penalties with Docker for Mac. Wherein VirtualBox would spin I'm going to guess it'll get better in time. It would be nice to get some insight into just what is burning CPU cycles. The experience besides that was really top notch IMO.

(I work for Docker on Docker for Mac)

Our approach is to focus on functionality and correctness first, and then improve performance over time.

We're building up a suite of performance benchmarks to help us track progress-- are there particular benchmarks that you would recommend we add? I'll certainly add "CPU load while idling" to the list.

Re: Docker for Mac Beta Review

#56
post #42
post #31

I've noticed some pretty extreme performance penalties with Docker for Mac. Wherein VirtualBox would spin I'm going to guess it'll get better in time. It would be nice to get some insight into just what is burning CPU cycles. The experience besides that was really top notch IMO.

[I work on Docker for Mac] The early betas focussed on feature completeness rather than performance for filesystem sharing. In particular, we have implemented a new "osxfs" that implements bidirectional translation between Linux and OSX filesystems, including inotify/FSEvents and uid/guid mapping between the host and the container. Getting the semantics right took a while, and all the recent betas have been steadily…

Thanks for the reassurance - I figured this was the case!

Re: Docker for Mac Beta Review

#57
post #55
post #31

I've noticed some pretty extreme performance penalties with Docker for Mac. Wherein VirtualBox would spin I'm going to guess it'll get better in time. It would be nice to get some insight into just what is burning CPU cycles. The experience besides that was really top notch IMO.

(I work for Docker on Docker for Mac) Our approach is to focus on functionality and correctness first, and then improve performance over time. We're building up a suite of performance benchmarks to help us track progress-- are there particular benchmarks that you would recommend we add? I'll certainly add "CPU load while idling" to the list.

Maybe something like a Django, Rails, etc. DEBUG=True dev server - they tend to poll for file changes which could really tax your osxfs implementation at "idle".

Re: Docker for Mac Beta Review

#58

Earlier quoted context omitted.

Not necessarily, if I allocate 8GB to a VM, my systems still runs smoothly even when I'm already using 10GB (I have 16GB). One problem is that the VM won't clean up the RAM properly but the swap can handle that quite nicely actually. And I never utilize 16GB of ram, 8 would be more then enough for me and ram is really cheap these days (even on macs).

You must not run more than 1 chrome tab....

2 windows with 20-40 tabs each. Doesn't take up that much ram (less then 2GB). I never have more then 2 Windows of any application (e.g. Only 2 terminal Windows) because it breaks the shortcut to get to the previous window

Re: Docker for Mac Beta Review

#59
post #46
post #37

Earlier quoted context omitted.

I am in the same boat. I'm actually holding up a wider scope for Docker deployment within our organization until we can use Docker for Mac.

https://github.com/nlf/dlite is a pretty good placeholder. Only thing it stumbles a lot on in my experience is if your containers need to hit a VPN.

Thanks! I'll try that.

Re: Docker for Mac Beta Review

#60
post #38
post #32

So it uses xhyve...does this mean Docker runs up a full hypervisor per Docker process you run? That seems a bit excessive.

That's not the case - there's only one virtual machine shared by all containers.

Oh...that's interesting. That would even be useful on Linux to enable greater resource separation between processes...say being able to lock all Docker processes down to 1-2 cores on a machine and with a hard memory limit they can't exceed.
Post reply on HN