Which Docker Images Can You Use On The Mac M1?

Docker Improved Their Mac M1 Support

Which Docker Images Can You Use On The Mac M1?

A few months ago, I worked with Docker on my Macbook Pro (M1). I installed it, but sadly enough, my mac crashed immediately.

I left it alone since I didn’t need it.

Now, a couple of months later, I needed Docker. I installed it; everything was fine during the installation. Even when trying to spin the Docker tutorial container, it stayed running 🥳


How To Use Docker On Mac M1?

1*ocj7HTjW6LYM4F8T_ygVAQ.png

Before you install Docker for Mac, run this command in your terminal for installing Rosetta 2. If you already have it installed, you can skip this step

softwareupdate --install-rosetta

Download Docker for Mac from the Docker website, and install it.


What Docker Image Is Usable On Mac M1?

Many Docker images are made available for the M1. Not every Docker image maintainer did that. Most official Docker Images created by Docker have support for ARM64.

Docker Images with the ARM64 tag run on the Mac M1 natively. If you use Rosetta 2, you can run amd64 images, but they can cause performance issues.

Example’s of popular Docker Images with ARM64 support are:

If you find Docker images that don’t have ARM64 support, go to the Github issues page and open an issue to request ARM64 support, this will help everyone 👍


MSSQL

For everyone that needs to use MSSQL in their application, I found that this image doesn’t support ARM64 yet. The alternative for this Docker image is mcr.microsoft.com/azure-sql-edge:latest. I found this during different debugging sessions but finally got it working with this image.


Are You A Docker Image Maintainer?

If you are a Docker Image maintainer, first, I would like to thank you for your fantastic work! A lot of people rely on your work, so a big thanks ❤️.

Docker Images currently can be built as multi-platform images. I don’t know how much work it is to convert a specific image to a multi-platform image. But, Docker is offering a simple way to build them quickly.

With the docker buildx build command, you can add multiple platforms to support arm64. For example

Read more on the Docker documentation about multi-architecture images.

Conclusion

I would love to see more Docker Image maintainers build multi-architecture images to run Docker containers on the Mac M1 or other platforms.


Thanks!

hashnode-footer.png I hope you learned something new or are inspired to create something new after reading this story! 🤗 If so, consider subscribing via email (scroll to the top of this page) or follow me here on Hashnode.

Did you know that you can create a Developer blog like this one, yourself? It's entirely for free. 👍💰🎉🥳🔥

If I left you with questions or something to say as a response, scroll down and type me a message. Please send me a DM on Twitter @DevByRayRay when you want to keep it private. My DM's are always open 😁

Did you find this article valuable?

Support Dev By RayRay by becoming a sponsor. Any amount is appreciated!