Skip to content

Conversation

@Keralin
Copy link
Contributor

@Keralin Keralin commented Feb 5, 2026

Summary

Add static binary build for arm64 architecture compatible with Alpine Linux (musl libc).

Changes:

  • Add dist/alpine-linux/arm64 build target with -tags netgo for static linking
  • Add dockerize-alpine-linux-arm64-$(TAG).tar.gz release artifact

Currently, the Alpine-compatible binary is only available for amd64 and ppc64le. The existing dockerize-linux-arm64 binary uses dynamic linking and may have glibc dependencies that don't work on Alpine's musl-based system. This PR adds a statically-linked arm64 binary using the same build flags as the other Alpine binaries.

Testing

Build tested locally:

$ GOOS=linux GOARCH=arm64 go build -ldflags "-X main.buildVersion=test" -a -tags netgo -installsuffix netgo -o dist/alpine-linux/arm64/dockerize

$ file dist/alpine-linux/arm64/dockerize
dist/alpine-linux/arm64/dockerize: ELF 64-bit LSB executable, ARM aarch64, version 1 (SYSV), statically linked, BuildID[sha1]=de8d29ab17b56c86971fb585b9089d9bf258e158, with debug_info, not stripped

✅ Binary is statically linked and ready for Alpine/musl environments.

Add static binary build for arm64 architecture compatible with Alpine Linux
(musl libc). This enables dockerize usage in Alpine-based arm64 containers,
which is increasingly common with Apple Silicon and ARM cloud instances.

Changes:
- Makefile: add alpine-linux/arm64 build target with -tags netgo
- Makefile: add dockerize-alpine-linux-arm64 release tarball
- release.yml: add upload step for alpine-linux-arm64 asset
@Keralin Keralin force-pushed the feat/alpine-linux-arm64 branch from b01b5fb to 6ae1845 Compare February 5, 2026 12:30
@jwilder jwilder merged commit 119bd7e into jwilder:master Feb 5, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants