Skip to content

fix(docker): add multi-arch (amd64/arm64) Docker build support - #130

Open
MuhammadAbeerAkmal wants to merge 1 commit into
NFDI4Chem:developmentfrom
MuhammadAbeerAkmal:arm-build-support
Open

fix(docker): add multi-arch (amd64/arm64) Docker build support#130
MuhammadAbeerAkmal wants to merge 1 commit into
NFDI4Chem:developmentfrom
MuhammadAbeerAkmal:arm-build-support

Conversation

@MuhammadAbeerAkmal

Copy link
Copy Markdown

Problem: The nmrkit Docker image only works on amd64 machines right now. It doesn't run on arm64 machines, like Apple Silicon Mac (M2) etc. houdini69 on #110 ran into this issue and just want nmrkit to work on his machine.

What change in this PR:

  • Dockerfile: JAVA_HOME is hardcoded to .../java-17-openjdk-amd64/, which would silently point at a non-existent path when built for arm64 (Debian installs the arm64 JDK under .../java-17-openjdk-arm64/). Added ARG TARGETARCH and switched the path to use it, so it resolves correctly per architecture.
  • dev-build.yml / prod-build.yml: added a docker/setup-qemu-action@v3 step (needed so GitHub's amd64 runners can emulate arm64 during the build) and platforms: linux/amd64,linux/arm64 on the main nmrkit image build step.

Testing: Verified the Dockerfile still builds locally for amd64. Haven't been able to test the arm64 build itself locally which will need to run in CI.

@NishaSharma14: New to this repo! It would be nice if you please review it.

@MuhammadAbeerAkmal
MuhammadAbeerAkmal changed the base branch from main to development July 30, 2026 17:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant