I just found out that Docker has released a first Preview of Docker on Apple Silicon. It's been there for a while, but I just found out and I am really excited, as I use Docker a lot for development purposes. Pulling a container is just often times a lot simpler, then having to install a particular suite of software components.
In this post, I want to share my initial impressions of using the Docker Preview with potential problems or other quirks that I will encounter. So stick along for the ride.
Installation and Setup
I downloaded the Docker Preview from the Docker blog post and installed it as usual.
Docker asked for privileged access to install its networking components, which makes sense.
The window disappeared and I though docker had stopped, but after a good few seconds a getting started guide tutorial appeared.
I jumped right into the link to the privacy settings as I like to turn a lot of that stuff off and landed right in the settings which I dug through. From what I saw online these are mostly the same as the normal Docker Desktop installation but this is my first time using anything from Docker that is not in the command line, thus I checked everything out and tweaked a few things to my liking.
At this point I went back, skipped the tutorial and was greeted by what appears to be the main screen:
As everything appears to be ready, I jumped into a terminal and started testing around.
Trying to run basic containers
I started up an Nginx container and everything seemed to work like normal.
I mean, what was I expecting, right? It's a preview, but basic features like pulling and using a normal container should work fine.
But now I was curious. Nginx is a container that is available for pretty much every platform, including ARM and ARM 64. What happens if I try starting an x86-64 container?
As expected: Doesn't work, as it can't find an ARM repository for the requested image.
Trying docker-compose and building containers
Now let's try using docker-compose and building a Container. I opened up a simple NodeJS project, let it build and it worked fine.
I consider that a success.
I am very excited about the first Preview of Docker for Apple Silicon to have become available, and I will use and test it out further in the coming weeks. Seeing how well it works already, I am very optimistic that it will not take too long for it to become available as a final version. Of course, there are probably still a lot of little quirks that they will have to work out, but getting it to function at all at this level that I see here is already a huge step in the right direction.