Pull Alpine/aarch64 tarball from unofficial builds as we do for Alpine/x64
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 45/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Quiet
- Tech stack
- docker, node.js
- Domain
- build-system, infrastructure
Research direction
Start with the Docker image build process and compare how Alpine/x64 pulls from unofficial-builds. Read unofficial-builds PR #189 and issue #200, including the notes about cross-compilation and SEA failure. Done means Alpine/arm64 is processed consistently with Alpine/x64 without overlooking the stated build and testing concerns.
Written by the indexing model from the issue text.
Description
Although unoffical-builds does produce an arm64 binary, it is not used by the images here. I think mixed among the recent-ish discussions was whether we should just drop even that pre-built, and just use the Docker infrastructure for all the Alpine variants.
While there are reasons that i won't go into here why that might be desirable, IMHO that would push it further away from the "regular" tier1/2 platforms. Since we're building it anyway (and people are downloading it independently of the docker images at a rate of about 1000/hour) I'd prefer the container image to have the identical build that we produce in the unofficial projects.
I'll spin off another issue about whether to process the unofficial Alpine/aarch64 built in the same way as Alpine/x64 since that's separate from Alpine/s390x.
Originally posted by @sxa in https://github.com/nodejs/docker-node/issues/2462#issuecomment-4287416228
The Alpine/aarch64 builds are far less popular than the figure listed above but since https://github.com/nodejs/unofficial-builds/pull/189 got merged we do now now have cross-compiled builds of Alpine/arm64 in the unofficilal-builds alone with x64 so we could follow the same process for both.
Notes:
- It's cross compiled instead of build natively (May not be an option, but we don't have any cross-compiled builds yet which have the rust support working for temporal enablement yet ... But that's potentially a bigger problem). It's also a cross-compiled build which doesn't undergo any testing elsewhere in the node system. https://github.com/nodejs/unofficial-builds/issues/200 is a potential issue with the cross-compilated build (SEA failure)
- There is a proposal to bump Alpine up to tier 2 which would change things again
- With the removal of Alpine/s390x from node 26's container images, and Alpine/ppc64le having been removed some time ago, that only leaves Alpine/arm64 as the "dynamically built at image creation time" platform so this would ultimately help reduce complexity in the process.
- Dominant language
- Dockerfile
- Stars
- 8.6k
- Forks
- 2k
- Avg merge
- 10h 19m
- Merged PRs (30d)
- 16
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from nodejs/docker-node
-
build process docs
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
nodejs/docker-node#2564 · 2 comments ·
-
build process
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
nodejs/docker-node#2437 ·
-
build process
Difficulty 2/5 1-3 hours Newbie friendliness 64/100
nodejs/docker-node#2436 · 1 comment ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
nodejs/docker-node#1779 · 1 comment ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
nodejs/docker-node#1707 · 3 comments · 7 reactions ·
All issues in nodejs/docker-node
Similar issues
-
Update to NCCL 2.32 Open
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
conda-forge/nccl-feedstock#166 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
dsx-ai-factory/infra-controller#6694 ·
-
bug build
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
facebookincubator/velox#19143 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
pydantic/pydantic-ai#8636 ·
-
0.kind: enhancement 9.needs: package (update)
Difficulty 2/5 1-3 hours Newbie friendliness 74/100