Skip to content

Build Docker Images

Building Multi-Architecture Docker Images for Altair Everywhere

This guide shows how to build Docker images that work on both x64 (AMD64) and ARM64 architectures using Docker Buildx.

Prerequisites

  • Docker Desktop installed with Buildx support
  • Docker Hub account (or another container registry)
  • Access to the Altair Everywhere repository

Step-by-Step Instructions

1. Clone the Repository

If you haven't already, clone the Altair Everywhere repository:

git clone https://github.com/gloveboxes/Altair-8800-Emulator

2. Navigate to the Docker Directory

cd Altair-8800-Emulator/Docker

3. Create and Configure Multi-Architecture Builder

Create a new buildx builder instance that supports multi-platform builds:

docker buildx create --name multiarch --use

Bootstrap the builder to ensure it's ready:

docker buildx inspect --bootstrap

⚠️ Warning: This will remove all build cache and may slow down subsequent builds.

4. Login to Docker Registry

Make sure you're authenticated with your container registry:

docker login

5. Build Multi-Architecture Image

Replace YOUR_DOCKER_ID with your actual Docker Hub username:

docker buildx build . --platform linux/arm64,linux/arm/v7,linux/arm/v6,linux/amd64 --tag YOUR_DOCKER_ID/altair8800:latest --push --no-cache

This command will:

  • Build for both ARM64, ARMv7, ARMv6, and AMD64 architectures
  • Tag the image as latest
  • Push directly to Docker Hub

6. Switch to Default Builder

docker context use default

Option 2: Remove Custom Builder

docker buildx rm multiarch

This automatically switches back to the default builder.

Verify Current Builder

Check which builder is currently active:

docker buildx ls

The active builder is marked with an asterisk (*).