Our review of Docker for Mac

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 🙂

If you like this article, give it some sharing ❤️

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.

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:

  1. 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 for mac app

Docker might ask you for some root permissions to install some things.

After you’re done with the installation process, a little helper will appear in the OS X bar.
docker for mac bar

Yay! You’re good to go now. Docker is up and running.

docker for mac bar

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

docker-compose up

you might experience this conflict with your Docker Toolbox (see screenshot below).

docker for mac error message

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

docker for mac terminal error fix message

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

docker for mac review terminal

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

uninstall docker toolbox - docker for mac

Summary

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!

Development tips, tricks and news.

Join thousands of developers & designers who get our content first!

If you like this article, give it some sharing ❤️