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

Helm chart: make images arm64 compatible and publish images supporting both amd64 and arm64 #421

Closed
consideRatio opened this issue Aug 21, 2021 · 2 comments
Labels

Comments

@consideRatio
Copy link
Collaborator

consideRatio commented Aug 21, 2021

A container registry can have multiple images under the same name for different CPU architectures. Thanks to that, the same Helm chart for example, can reference the same image name, and be installable both on amd64 machines and arm64 based machines.

I'd like for this Helm chart to be installable in arm64 based environments as well, for example on a RaspberryPi based k8s cluster.

Practically, this can be done by using buildx which is like docker build but you can then also pass --platforms linux/amd64,linux/arm64 and voila your images will be both amd64 and arm64 compatible. This has been done for JupyterHub for example and is very common among Helm charts. Amd64 and Arm64 are the most popular CPU architectures to support.

A reference implementation setup can be found here: https://github.com/jupyterhub/zero-to-jupyterhub-k8s/blob/d848959b6229d3adaf2cea7e06f79cac1433fc43/.github/workflows/test-docker-build.yaml#L41-L54

Related

@consideRatio consideRatio changed the title Helm chart: build arm64 compatible images Helm chart: make images arm64 compatible and publish images supporting both amd64 and arm64 Aug 21, 2021
@consideRatio
Copy link
Collaborator Author

I've worked to make this possible, and we are almost there I think. Right now, the only issue is that psutils is failing to build in arm64 without installing a lot of extra stuff making things complicated. I'd rather help psutils support building an arm64 wheel than workaround it though.

@consideRatio
Copy link
Collaborator Author

I'll close this as resolved for now, and track the need to handle this in #543.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant