So one of the painful points of using
docker on OS X is that you need to run a virtualbox VM, which often suffers from performance issues. With xhyve, a OS X virtualization system, and docker-machine-xhyve you can now have
docker use the native OS X hypervisor to run containers.
No more dealing with virtualbox shenanigans!
In this script, I've also set up a way to autoconfigure terminal sessions to load docker's environment vars (dependent on
docker-machine) so you do not have to run
eval $(docker-machine env whatever) every time you open a new terminal window.
- At least OS X 10.10 (Yosemite) because Hypervisor.framework, on which xhyve depends, was first introduced in Yosemite.
Before you begin
Uninstall Docker Toolbox:
$ sh -c "$(curl -fsSl https://raw.githubusercontent.com/docker/toolbox/master/osx/uninstall.sh)"
And remove existing caches
$ sudo rm -rf ~/.docker
$ sh -c "$(curl -fsSL https://gist.githubusercontent.com/0x414A/0d5303b787a449cd564f/raw/install.sh)"
$ sh -c "$(curl -fsSL https://gist.githubusercontent.com/0x414A/0d5303b787a449cd564f/raw/uninstall.sh)"
Known Issues / shenanigans to be aware of
- After rebooting, when you open a Terminal / iTerm session, there will be an error regarding TLS certs. You will need to run
docker-machine restart dev.