We at Usersnap are huge Docker fans. And we’re not only big fans, but also making use of Docker for a couple of microservices, websites and minor apps we’ve built.
So, today I’m very excited to share our first review of Docker for Mac with you. Docker for Mac is publicly available since June 20th. I hope you’re as excited as I am 🙂
What’s Docker for Mac …& for Windows?
In March this year, Docker finally announced and released a native support for Mac and Windows.
Docker started with a closed beta, only providing access to a couple of early adopters. Since June 20th, you can get Docker for Mac & Windows in public beta. Therefore you can download Docker for Mac & Windows for free. Though, don’t forget it’s still beta.
And according to the official documentation Docker for Windows and Docker for Mac share some common code base, however it seems that Docker for Windows still is a bit more beta.
Docker for Mac is a game changer.
Docker for Mac is the latest offering for Mac which runs as a native OS X application and uses xhyve to virtualize the Docker Engine environment and Linux kernel-specific features.
Why is this so great?
Because Docker for Mac allows you to easily run Docker as a native app on your Mac.
Or as Noah Zoshke stated:
Docker for Mac is a game changer.
While you might have encountered a couple of problems and errors with your Docker Toolbox, it seems pretty promising. And most importantly: No more VirtualBox!
You don’t need docker-machine to run Docker for Mac.
Docker for Mac vs Docker Toolbox
If you’ve already been using Docker via the Docker Toolbox, you might wonder how the native Docker for Mac influences your existing projects.
Before installing Docker for Mac, I’d recommend checking out this official comparison of Docker for Mac vs Docker Toolbox.
Basically, you can use Docker for Mac and Docker Toolbox together on the same machine. Docker’s official documentation recommends making sure that all Docker environment variables are unset (see detailed installation process below).
Installing Docker for Mac
So, first things first.
In order to get started, you need to download Docker for Mac:
- Download Docker for Mac
Be aware, that it still is in public beta, and Docker claims that some functionalities might change before a public release.
After you’ve downloaded the file, you’ll see that it’s the standard installation process, similar to a lot of other OS X applications.
You simply execute the .dmg file and you’ll drag the Docker app in your applications folder.
Docker might ask you for some root permissions to install some things.
Yay! You’re good to go now. Docker is up and running.
If you’re now opening up your terminal (and you’ve been using Docker Toolbox before) you might run into the same problem as I did.
If you run
you might experience this conflict with your Docker Toolbox (see screenshot below).
It looked like Docker for Mac had some problems, due to my installed Docker toolbox.
In a first step you need to check whether Toolbox DOCKER environment variables are set.
$ env | grep DOCKER
If this command returns no output, you are ready to use Docker.
If it returns an output (as shown in my screenshot above), you need to unset the DOCKER environment variables.
You can do that by running the following command:
unset DOCKER_TLS_VERIFY unset DOCKER_CERT_PATH unset DOCKER_MACHINE_NAME unset DOCKER_HOST
As you can see in the screenshot above, unsetting the variables enabled me to start building Hugo. Yay!
Running containers on the local host network
Docker for Mac also includes a DNS server for containers. And if you’re using Docker in a corporate environment with a restrictive VPN, the good news is that Docker for Mac works there too.
Uninstalling old Docker files and apps
I’ve been using the Docker Toolbox for more than a year now. And in this time I collected quite a lot of files and stuff, which are now replaced by Docker for Mac.
So, I’ve been pretty excited to uninstall the following files and apps:
- Docker Toolbox (Docker Machine, Docker Quickstart Terminal, Kitematic)
- VirtualBox (with it’s Docker files)
- The whole folder .docker (with more than 4.8 GB of size)
- The folder .boot2docker
We have been using the Docker Toolbox for the last 12 months or so and are now pretty excited about Docker for Mac! The installation was pretty smoothly and we’ve seen a lot of advantages of using Docker for Mac compared to Docker Toolbox. However, there might appear some glitches as Docker for Mac is in beta.
Here’s a quick summary with the best benefits of using Docker for Mac:
- Pretty smooth and simple installation process
- No more VirtualBox!
- No problems with virtual machines, filesystems or other bugs you might have encountered with the Docker Toolbox
- Fast mount volumes of host file system (file change detection now also works inside docker machines!)
- So far Docker on Mac behaves like Docker on Linux (which means NO more custom versions of scripts for Mac!)
- If you’ve been using the Docker Toolbox, you can uninstall a lot of stuff! Yay!