vmware-tanzu / pinniped

Pinniped is the easy, secure way to log in to your Kubernetes clusters.
https://pinniped.dev
Apache License 2.0
578 stars 66 forks source link

Provide arm64 arch docker images #1386

Closed tiagomeireles closed 1 year ago

tiagomeireles commented 1 year ago

Is your feature request related to a problem? Please describe.

I am unable to run pinniped on arm64 arch. Pinniped doesn't currently provide arm64 binaries and images.

The images provided at projects.registry.vmware.com/pinniped/pinniped-server are single arch/platform.

$ docker buildx imagetools inspect projects.registry.vmware.com/pinniped/pinniped-server:v0.22.0
Name:      projects.registry.vmware.com/pinniped/pinniped-server:v0.22.0
MediaType: application/vnd.docker.distribution.manifest.v2+json
Digest:    sha256:481b94f4468425542f111143ebb69cd2057b0003e7bee75047892638cf88e135

Describe the solution you'd like

Describe alternatives you've considered

Building pinniped from source for arm64.

Are you considering submitting a PR for this feature?

Additional context

Others are running on arm64. Approximately a year ago someone was getting pinniped to work on a rasphberry pi. ref

cfryanr commented 1 year ago

Thanks for opening an issue @tiagomeireles!

Can you share more about your use case? Curious which platform you are using, which Kubernetes distribution, and what you're trying to accomplish.

Although we haven't tried this ourselves, it should be fairly easy to make a copy of the Dockerfile, adjust it for arm64 compilation flags, docker build the Dockerfile, push the resulting container image to your favorite registry, and then use that container image when deploying Pinniped. Curious if that works for you. If your client machine is also arm64, you could compile the CLI with the appropriate arm64 flags too.

thebearingedge commented 1 year ago

I use an Ubuntu Linux VM on Apple silicon and do local cluster work in Docker (KinD/Talos/K3D). It would be really nice to be able to use matching images and cli. Happy to work on that!

Edit: Oh, I see that Bitnami is publishing a multi-arch image.

cfryanr commented 1 year ago

Some thoughts on what we would need to change to support this for the server:

Some thoughts on what we would need to change to support this for the CLI:

Some thoughts on other things that we should do:

Notes:

cfryanr commented 1 year ago

The next release will include amd64+arm64 multi-arch container images for the server, and will also include arm64 for the linux/darwin/windows CLI. All the necessary changes have already been made, so we just need to create a release. 🎉