Node.js 20 + Alpine Linux: Same musl Native Module Limitations as Node 22
Node.js 20+Alpine Linux (musl)
Node.js 20 on Alpine has the same musl libc limitation as Node.js 22. The official `node:20-alpine` image is well-maintained. When building native modules in Alpine-based Docker containers, install build dependencies (`apk add --no-cache python3 make g++`) in the builder stage and use multi-stage builds to keep the final image small.
Workarounds & Fixes
Multi-stage Dockerfile: build with `node:20-alpine` + tools, copy only dist to clean `node:20-alpine`
Add: `RUN apk add --no-cache python3 make g++` before `npm install`