l7mp / stunner

A Kubernetes media gateway for WebRTC. Contact: info@l7mp.io
https://l7mp.io
MIT License
709 stars 56 forks source link

Request for providing images for arm architecture (raspberry pi) #75

Closed LeaTaka closed 1 year ago

LeaTaka commented 1 year ago

Hi there, I compiled the images that are used by your helm charts for arm64. https://gitlab.com/leataka/yiqi/janus-stunner

Unfortunately it is not enough to make it work.

Stunner works fantastic, now my goal is to run janus webrtc on an rpi4b-8GB which is linux/arm64. Can you please help?

levaitamas commented 1 year ago

Hi @LeaTaka!

That sounds like an interesting project. I am not quite sure if I understood correctly what is missing in your setup.

LeaTaka commented 1 year ago

Hey there, thanks for the swift reply!

  1. I did some extensive testing with Janus on x86 and arm platforms both on bare metal and K8s. It works :-) My setup with stunner on x86 works like a charm. Now I need to get it running behind a nat on the rpi4B in K8s so I can get rid of the cloud provider while easily deploying updates.
  2. Can I assist? I have the feeling that some code is not compatible as I have tested your images with correct arm64 manifest information.
  3. Well yes, but not much: standard_init_linux.go:228: exec user process caused: exec format error Most of the time this indicates an architecture mismatch. However this is the output from the manifest-tool inspect (attached): output.txt
levaitamas commented 1 year ago

I see! The architecture mismatch might be the issue indeed. We build the STUNner binary for amd64 in the Dockerfile. Currently we are a bit busy, but in the near future I will extend the release workflow to build amd64 and arm64 containers too. Hope that will help your case. Meanwhile, a quick fix on your side would be to set GOARCH=arm64 in the Dockerfile go build command and rebuild the image on the rpi4.

levaitamas commented 1 year ago

Hi @LeaTaka! I managed to setup the CI workflow and build arm64 images for stunner and stunner-gateway-operator. Currently, we have arm64 images for the dev channel only. If everything goes well, we intend to publish arm64 builds for future stable versions too. You can install the dev version with helm as stunner/stunner-dev and stunner/stunner-gateway-operator-dev. Please let us know how it works!

LeaTaka commented 1 year ago

Fantastic, will test tomorrow!!

LeaTaka commented 1 year ago

Amazing !! I can confirm stunner/stunner-dev and stunner/stunner-gateway-operator-dev WORKS on raspberry pi arm64 architecture !! Thanks alot and let me know if I can help you out anytime!

levaitamas commented 1 year ago

Awesome! Happy to hear that it works!

I will close this issue for now since the original issue seems resolved. Feel free to (re-)open if you encounter any issues.