kube-plex
kube-plex copied to clipboard
No ARM support
Looks like the image at quay.io/munnerz/kube-plex
doesn't have arm support. It would be easy to cross-build and put up our own image on ghcr, and enable compatibility for raspberry pi's, pinebooks, and other arm devices.
I'll need to take a look how to coax GitHub Actions to build for RPi's, the docker build file should support it out of the box.
Hmm.. I meant to ask you to confirm if the image works before I tag a new release to update the latest
tag. You can find the relevant images here https://github.com/ressu/kube-plex/pkgs/container/kube-plex/7574986
Thanks, but unfortunately I don't have an arm64 device to test with. TBH they're a bit unusual still (but growing). Raspberry Pi OS is primarily distributed in 32 bits. It's only recently that 64 bit OSes have become available for the pi4, specifically.
You need to add linux/arm/v7
to the list to be compatible with raspberry pi devices on a 32 bit OS. That is something I can test with. :)
Oh, I didn't realize that they still default to 32 bit, let me adjust the build rules to see if I can trick it to build a 32 bit version too.
FWIW I manually tested the arm64 image with qemu and it works.
Here's my qemu command.
qemu-system-aarch64 \
-machine type=virt \
-cpu cortex-a72 \
-m size=8G \
-nographic \
-bios QEMU_EFI.fd \
-drive if=none,file=ubuntu-21.04-server-cloudimg-arm64.img,id=hd0,format=raw \
-device virtio-blk-device,drive=hd0 \
-drive if=none,file=/seed.img,id=seed,format=raw \
-device virtio-blk-device,drive=seed \
-netdev user,id=user0,hostfwd=tcp::22-:22 \
-device virtio-net,netdev=user0"
seed.img
is a simple cloud-init. I based the whole approach on https://github.com/ljishen/Cortex-A72-Emulator .
Thanks for checking. I should have all the relevant build rules in place to build armv7 images along with everything else, but it seems that GitHub is having issues with the build token permissions so I'll retry builds during next week.
There we go, permission issues resolved and build is running for main
branch (and tag) as we speak. It should complete in a few minutes. The latest
tag will be updated to contain an arm/v7 image once the next release is tagged.
Just confirmed that multi-arch build succeeded and https://github.com/ressu/kube-plex/pkgs/container/kube-plex/7948865 has arm/v7 support too. So when ever I tag the next release, arm/v7 will automatically build for the releases. The normal CI builds are only built for amd64, since the other builds take much longer to complete.