Skip to content

[need help reproducing] platform mismatch for docker images #139

@dinmukhamedm

Description

@dinmukhamedm

TL;DR

  1. We need your help investigating these issues and identifying the way forward.
  2. We need your help reproducing this issue in other ARM environments.

Issue

When pulling docker images on an Apple Silicon Mac, we get

The requested image's platform (linux/amd64) does not match the detected host platform
(linux/arm64/v8) and no specific platform was requested

for all images built from this repo, i.e. app-server, frontend, semantic-search-service, and python-executor.

This is just a warning, and it is not blocking.

Cause

This is because our actions in .github/workflows are run on ubuntu-latest, which is amd64, and so images are built for amd64.

Attempts at mitigating

  1. We tried running actions on macos-latest and build for arm64/v8 instead, but that would actually not run on x86 machines – which is clearly worse than just a warning on Mac.
  2. We tried running docker buildx, but (1) it won't run on macOS; see [macOS] Add Docker to macOS actions/runner-images#2150 (comment); (2) it is extremely slow
  3. We tried reading about Colima that is mentioned in the above (Add colima actions/runner-images#6216), but it is not available on GitHub actions since MacOS 13 and will not be, nor will any other containerization tool: Add Colima on macOS 13/14 actions/runner-images#10079 (comment)

Possible ways forward

?? We don't know, looking for your help! If you have experience running docker build actions on github to build for both amd64 and arm64, please share your experience!

Help wanted reproducing in different environments

We also need help verifying if our images work on arm64 machines, that are non-MacOS. So if you have either of the setups below, and can try running our docker compose there, we'd really appreciate your feedback!

You will need to

  1. clone the repo: git clone https://github.com/lmnr-ai/lmnr
  2. run docker compose up (WITHOUT the -d flag).
  3. Look out for warnings after container creation, but before the first logs from containers.
  4. Report the results
    • whether the dockers actually spin up
    • whether there are warnings in logs. Please attach the full docker startup logs as text or screenshot

Setups that we are interested in:

  • AWS Graviton EC2 instance* with ubuntu
  • AWS Graviton EC2 instance* with Amazon Linux
  • A Windows-on-ARM laptop, most likely on a Snapdragon X (Elite) with or without WSL
  • Linux on a windows-on-ARM** laptop, most likely on a Snapdragon X (Elite)
  • Any other ARM non-MacOS machine

* instance type name must end with a g, like m7g.large
** I'm personally interested in your experience, so shoot me a Discord message

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requesthelp wantedExtra attention is needed

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions