We use cookies to understand how people use Depot.
Guides

Arm Containers

Why build native Arm containers with Depot?

Depot is a remote Docker build service that makes the image build process faster. When image builds are routed to Depot, we can speed up your build by making the cache persistent, shared, and more intelligent. Saving you build minutes and allowing your developers to reuse each of the others work without any heavy lifting.

That is true for images that are built for x86 and Arm. Depot is one of the few managed services that can build true Arm containers that run on M1 MacBooks, AWS Graviton, and Azure Ampere. Giving you all the benefits of blazing fast image builds with fast and intelligent caching, but without any emulation.

How to build native Arm containers with Depot

With depot build we detect the architecture of the machine requesting the container image build. If it is an x86 machine, we route the build to our x86 builder fleet and return to you a compatible image. If it is an Arm machine like M1 or AWS Graviton, we route the build to our Arm builder fleet and return to you a compatible image.

What about multi-architecture containers?

We are the only CI provider that allows you to build true multi-architecture images. If you want to build a container that is compatible with both x86 and Arm, you can use depot build --platform linux/amd64,linux/arm64. We will build the container for you across both builder fleets and return to you a combined image that is compatible with both architectures.

Note: If you are building a multi-architecture image, you should specify --push to push the image directly to your registry after building. Multi-architecture must be a supported feature of your registry. The mainstream cloud provider ones like Amazon Elastic Container Registry, Google Artifact Registry, and Azure Container Registry support multi-architecture images.