Skip to content
This repository has been archived by the owner on May 31, 2024. It is now read-only.

Add ARM support #12

Open
Mikle-Bond opened this issue Aug 17, 2021 · 10 comments
Open

Add ARM support #12

Mikle-Bond opened this issue Aug 17, 2021 · 10 comments

Comments

@Mikle-Bond
Copy link

From what I see in rqlite/rqlite#340 it should be possible to build ARM images and push them to Docker hub.
I've noticed that Netmaker 0.7 uses rqlite as recommended and default data storage. But their official documentation doesn't mention that installation via Docker will fail on arm-based computers.

@otoolep
Copy link
Member

otoolep commented Jul 20, 2022

Fixed. https://www.philipotoole.com/rqlite-7-6-0-released/

@otoolep otoolep closed this as completed Jul 20, 2022
@otoolep
Copy link
Member

otoolep commented Jul 20, 2022

We

@otoolep otoolep reopened this Jul 20, 2022
@otoolep
Copy link
Member

otoolep commented Jul 20, 2022

Well, not fixed, but there are ARM builds available now.

@bigmangos
Copy link

pls add arm docker tag, tks

@otoolep
Copy link
Member

otoolep commented Aug 22, 2022

What are best practices for tag management in the Docker hub?

@clementduveau
Copy link

clementduveau commented Aug 23, 2022

@otoolep Hi, in Docker Hub, no need to add a tag for cpu architecture. Tags are for version and base OS. Usually tags are like this:

  • latest for the latest version with latest default OS
  • alpine / ubuntu for the latest version with alternative OS
  • 2 or v2 (or whatever how version are named) for the latest minor version in v2 with default OS
  • 2-alpine for the latest minor version in v2 with alternative OS

But you are free to use your own tagging policy. Just tagging version is more than enough.

you can see a good example on the HTTPD docker hub page.
Notice that for each tags several builds exists, dockerd will just pull the right one.

Most CI can build all architectures, tag it, and push it using variables.

ARM starts to gain a lot of traction in professional market right now (AWS and Azure are now providing ARM and plan them to be default arch)

@clementduveau
Copy link

Hey, I saw that you were using CircleCI for the main repo, and i found an example here

Basically, docker provides buildx to build images to multiple architectures without the need to launch a machine with a specific architecture.
I am not sure to understand exactly your workflow with Docker and how different is the compiling commands between ARM and x64, so I can't contribute right now. If you need help to search for more informations or contribute on specific stuff, you can ask my help.

@NerdyShawn
Copy link

NerdyShawn commented Oct 4, 2022

is it circleci thats in use? It looks like docker v20 is in use by default so perhaps just need a config and update to start using buildx
https://circleci.com/docs/building-docker-images#docker-version

I was able to configure buildx locally and get a multi-platform image built wth the existing BUILDING.md after a buildx cange.
rqlite/rqlite#1050 (comment)

Edit: circleci docs reference, circleci/circleci-docs#6034
Edit Edit: also trying to make a PR if this is the right track for the changes to try and at buildx support, assuming circli(first time using circlci for myself so let me know if something is off.) #13

@LuKks
Copy link

LuKks commented Apr 3, 2024

docker run rqlite/rqlite

WARNING: The requested image's platform (linux/amd64) does not match the detected host platform (linux/arm64/v8) and no specific platform was requested
exec /bin/docker-entrypoint.sh: exec format error

I will make a local build but cooler if it was already pushed on Docker Hub so it just works for everyone

https://hub.docker.com/r/rqlite/rqlite/tags (missing ARM builds)

Thanks, looks promising

@3goats
Copy link

3goats commented Apr 9, 2024

+1

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

No branches or pull requests

7 participants