keel-hq / keel

Kubernetes Operator to automate Helm, DaemonSet, StatefulSet & Deployment updates
https://keel.sh
Mozilla Public License 2.0
2.42k stars 280 forks source link

Any possibility of updating arm64 images #710

Open avber opened 1 year ago

avber commented 1 year ago

Hi,

A latest image for arm64 would be greatly appreciated.

Thanks

rscorer commented 1 year ago

I just hand built and uploaded 0.18 to docker hub:

rscorer/keel-aarch64

I haven't been able to test it yet though...

there is also a 32 bit one here

rscorer/keel-arm

Hope that helps

avber commented 1 year ago

Thank you, @rscorer .

Will try it next week.

sebastianohl commented 1 year ago

+1

rscorer commented 1 year ago

I just hand built and uploaded 0.18.1 to docker hub:

rscorer/keel-aarch64

I haven't been able to test it yet though...

there is also a 32 bit one here

rscorer/keel-arm

Hope that helps

yusufhm commented 11 months ago

Hi @rscorer, I was just trying this out today, but I get the following error on 0.18.1 and the Pod never reaches the Ready state:

level=warning msg="sql store connector: can't reach DB, waiting" error="Binary was compiled with 'CGO_ENABLED=0', go-sqlite3 requires cgo to work. This
 is a stub" uri=/data/keel.db
rscorer commented 11 months ago

Hi @yusufhm ,

Thanks for letting me know. I've built a new version on a dedicated ARM64 build machine, and managed to get it working.

I've pushed it to my docker hub.

rscorer/keel-aarch64

yusufhm commented 11 months ago

Thanks for that @rscorer !

In the meantime, I actually forked the repo and added a Github workflow to create the image: https://github.com/yusufhm/keel/pkgs/container/keel

docker pull ghcr.io/yusufhm/keel:master

I tried to build multi-arch images, but I kept running into timeout issues with some of the npm packages - not sure if a token or something needs to be added for that to succeed.

If the devs are willing, I could create a PR with my changes and with some slight modifications they would have multiarch images built right from Github.

rscorer commented 11 months ago

Amazing @yusufhm, I'm in the midst of trying to make goreleaser work in a similar manner, I haven't tried including the UI as of yet though - thanks for the heads up!

zs-dima commented 9 months ago

+1

fardjad commented 8 months ago

I took a different approach (instead of forking the project) and built a GitHub Actions workflow that checks for new releases of Keel every day and builds a multi-arch (amd64 and arm64) image. The image is then pushed to fardjad/keel.

Unless something breaks the arm64 builds in this repository, my published images should always be up to date. If you want to take a look under the hood or create your own fork, the image builder repository is here.

4F2E4A2E commented 5 months ago

This install did the trick, thank you @fardjad

helm repo add keel https://charts.keel.sh
helm repo update
helm upgrade --install \
    keel keel/keel \
    --namespace=kube-system \
    --set helmProvider.version="v3" \
    --set image.repository=fardjad/keel
rscorer commented 1 month ago

Hi @fardjad,

I just forked and updated your code. Added a pull request so it notices when the digest of the latest release changes, as the keel team seem to not always tag their most recent releases...

Probably not earth shattering!!

Thanks for your repo, I find it very useful.