Unable to build/deploy on ARM64/minikube
See original GitHub issue - deployment/adservice: container server terminated with exit code 1
- pod/adservice-5b65c5ff6-zzfkl: container server terminated with exit code 1
> [adservice-5b65c5ff6-zzfkl server] Error occurred during initialization of VM
> [adservice-5b65c5ff6-zzfkl server] Could not find agent library /opt/cprof/profiler_java_agent.so in absolute path, with error: /opt/cprof/profiler_java_agent.so: cannot open shared object file: No such file or directory (Possible cause: can't load AMD 64-bit .so on a AARCH64-bit platform)
- deployment/adservice failed. Error: container server terminated with exit code 1.
Issue Analytics
- State:
- Created 2 years ago
- Comments:15 (6 by maintainers)
Top Results From Across the Web
Unable to build/deploy on ARM64/minikube - GoogleCloudPlatform ...
I can't guarantee that this works (because I am not sure if the base images used in each of microservices' Dockerfiles support ARM)....
Read more >microservices-demo - Github Plus
Unable to build/deploy on ARM64/minikube ... directory (Possible cause: can't load AMD 64-bit .so on a AARCH64-bit platform) - deployment/adservice failed.
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
Not fully supported yet, but note that you can alternatively use
docker buildx
from your ARM machine to build amd64 images: https://docs.docker.com/buildx/working-with-buildx/#build-multi-platform-imagesWe’re currently investigating the use of ARM chips by developers to build our sample applications.
tl;dr - We will not be (consciously) supporting the deployment of our microservice sample images on ARM anytime soon. I say “consciously” because you might still be able to build the Docker images locally (and target ARM) and get them to deploy on ARM machines.
Hi @zwan2 and @jxlwqq! Thank you for raising this issue! 😁
We’ve actually been talking about ARM support a lot recently. This issue is becoming a growing concern — especially given the popularity of the
M1
chip.Currently, the Docker images (for each microservice) that we host (e.g.,
gcr.io/google-samples/microservices-demo/checkoutservice:v0.3.1
) use AMD64 architecture.And, unfortunately, we do not intend to create sample images that use ARM architecture anytime soon — mainly because Google Kubernetes Engine does not currently support ARM-based image deployments.
@zwan2 In your Kubernetes deployments, are you using the images hosted at
gcr.io/google-samples/microservices-demo/...
? If so, have you tried building the images locally (and targeting ARM) and using those locally-built Docker images in minikube? I can’t guarantee that this works (because I am not sure if the base images used in each of microservices’ Dockerfiles support ARM). But it’s worth trying. 😃