deno_docker icon indicating copy to clipboard operation
deno_docker copied to clipboard

Should support arm64

Open zz opened this issue 3 years ago • 10 comments

Docker image should have arm64

zz avatar Dec 28 '20 07:12 zz

@zz if you're still interested, I have an ARM64 multi-arch image here: https://github.com/LukeChannings/docker-deno (lukechannings/deno on DockerHub)

LukeChannings avatar Jan 18 '21 16:01 LukeChannings

Wow, that's great @LukeChannings .

So this (more or less) "just works" if you pass the --platform argument? Am I reading that correctly?

https://github.com/LukeChannings/docker-deno/blob/c4401697918050fd5a1f91ca3b21d7fcd62c5eea/.github/workflows/build-deno.yaml#L46

Is there a reason to do it like you do (downloading from releases) rather than as a multi-step?

hayd avatar Jan 22 '21 22:01 hayd

Hey @hayd,

The --platform argument is for compiling x86/x86_64/aarch64, etc. It won't cross-compile for Windows/Darwin.

I push the artefact to the release so that the deno binary can be downloaded independently, since there is not yet an official aarch64 builds.

Of course, aarch64 builds of 1.7.0 aren't available atm because rusty_v8 isn't available yet and I've had trouble compiling it manually.

LukeChannings avatar Jan 23 '21 11:01 LukeChannings

Is there any update on this? I need to deploy Deno >= 1.12 in production and I'm having difficulty testing locally on my arm64 machine

seanaye avatar Aug 09 '21 16:08 seanaye

The --platform argument is for compiling x86/x86_64/aarch64, etc. It won't cross-compile for Windows/Darwin.

I guess I never followed this, does this mean we wouldn't be able to build aarch64 on the denoland's ubuntu-large in CI?

That said, my suspicion is that maintaining arm64 will be much more palatable once there is native support for arm64 in GitHub actions (azure). Until then it's unlikely denoland will be able to maintain it. Though.. I don't speak for the team that is just my hunch.


The latest is that @LukeChannings is still maintaining https://github.com/LukeChannings/deno-arm64 and building arm64 binaries :muscle:

hayd avatar Aug 09 '21 23:08 hayd

I believe the current best way of handling this is by doing something like:

https://github.com/docker/build-push-action/blob/master/docs/advanced/multi-platform.md

felipecrs avatar Aug 26 '21 16:08 felipecrs

Any update on this?

theomessin avatar Jan 11 '22 13:01 theomessin

+1

loeffel-io avatar Dec 04 '22 00:12 loeffel-io

+1

It would be great to have official arm64 builds available as the architecture is getting more popular, both for development (recent Macbooks) and for servers (graviton etc).

comunidadio avatar Mar 02 '23 06:03 comunidadio

Hmm, recommendation here is to use a third party image. Same as how the alpine build is based on a third party image.

I'd like to see alpine removed from the official docker repository and arm64 builds added. That way those interested in using "The easiest, most secure JavaScript runtime" can be steered into using official images that are based only on official images.

benatkin avatar May 11 '23 19:05 benatkin