Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

no matching manifest for linux/arm64/v8 #2655

Open
AnujanR opened this issue Jan 17, 2025 · 7 comments
Open

no matching manifest for linux/arm64/v8 #2655

AnujanR opened this issue Jan 17, 2025 · 7 comments

Comments

@AnujanR
Copy link

AnujanR commented Jan 17, 2025

Image

Hi, i'm getting this error when i try to run the function locally in my mac (M1 pro Apple Silicon). Can anyone help me with resolving this issue?

@matejvasek
Copy link
Contributor

matejvasek commented Jan 17, 2025

@AnujanR as of now the buildpack strategy works mostly only with amd64. Exceptions are Java and Go, these should work also on arm64.

One option is to somehow enable rosetta in docker, I do not have personal experience but I heard that with rosetta it is possible to run amd64 images on M1. (cc @aslom)

Another option is to use "s2i" build strategy instead: func build --builder=s2i.

Yet another option is to employ "on cluster build" where image is build in the cluster (presumably amd64), func deploy --remote=1, but you have to install some tekton tasks to your cluster first.

@matejvasek
Copy link
Contributor

IMO most simple solution would be func build --builder=s2i but then the resulting image would be arm64, so it would run locally on your machine but it might not work in the cluster, if the cluster is amd64.

@AnujanR
Copy link
Author

AnujanR commented Jan 24, 2025

Hi @matejvasek thanks for the reply,

I need my function to run on my remote cluster and not locally. Although the function builds with func build --builder=s2i it cannot be used to deploy to my cloud cluster due to architecture mismatch as you said. Is there any workaround to build the image to be supported to my linux machine in my cluster. I tried tekton, but seems no luck in tekton too.

But i'll keep trying anyways. Thanks

@AnujanR
Copy link
Author

AnujanR commented Jan 24, 2025

Also i'm using digital ocean's kubernetes cluster for this task, if you can assist me with tekton pipelines, that would be great

Thanks

@matejvasek
Copy link
Contributor

@AnujanR you can look at https://github.com/knative/func/blob/main/hack/install-tekton.sh

When tekton is installed your could try:

func deploy -v --remote=1

@matejvasek
Copy link
Contributor

@vabatta
Copy link

vabatta commented Feb 7, 2025

is there anything planned to support development of functions and local testing on arm based machines? I'm on a macbook with M1 using rust and I would like to test out knative out as a solution.

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

No branches or pull requests

3 participants