...

/

Multi-Architecture Images

Multi-Architecture Images

Learn what multi-architectural images are and how they provide support across different platforms and architectures.

One of the best things about Docker is its simplicity. However, as technologies grow, they inevitably get more complex. This happened for Docker when it started supporting different platforms and architectures, such as Windows and Linux on variations of ARM, x64, PowerPC, s390x, and more. Suddenly, there were multiple versions of the same image for all the different architectures, and developers and users had to put in significant extra work to get the right version. This broke the smooth Docker experience.

Multi-architecture images to the rescue

Docker and the registry API adapted and became clever enough to hide images for multiple architectures behind a single tag. This means we can do a docker pull alpine on any architecture and get the correct version of the image. For example, if we’re on an AMD64 machine, we’ll get the AMD64 image.

Internal working of multi-architectural images

To make this happen, the Registry API supports two important constructs:

  • Manifest lists
  • Manifests

The ...

Access this course and 1400+ top-rated courses and projects.