build.sh runs npm run build on macOS, so only the host's sharp binary (darwin-arm64) got traced into the standalone output. The container runs node:20-alpine (Linux, musl libc), which cannot load that binary - the server crashed at runtime, causing a 502 even though the docker build itself succeeded. npm pack can fetch another platform's prebuilt sharp/libvips tarballs without an install-time OS check, so build.sh now pulls the linux-musl x64 and arm64 builds directly into build/node_modules and drops the now-unused host binary.
@img/sharp-libvips-linuxmusl-arm64
Prebuilt libvips and dependencies for use with sharp on Linux (musl) 64-bit ARM.
Licensing
This software contains third-party libraries used under the terms of the following licences:
| Library | Used under the terms of |
|---|---|
| aom | BSD 2-Clause + Alliance for Open Media Patent License 1.0 |
| cairo | Mozilla Public License 2.0 |
| cgif | MIT Licence |
| expat | MIT Licence |
| fontconfig | fontconfig Licence (BSD-like) |
| freetype | freetype Licence (BSD-like) |
| fribidi | LGPLv3 |
| glib | LGPLv3 |
| harfbuzz | MIT Licence |
| highway | Apache-2.0 License, BSD 3-Clause |
| lcms | MIT Licence |
| libarchive | BSD 2-Clause |
| libexif | LGPLv3 |
| libffi | MIT Licence |
| libheif | LGPLv3 |
| libimagequant | BSD 2-Clause |
| libnsgif | MIT Licence |
| libpng | libpng License |
| librsvg | LGPLv3 |
| libspng | BSD 2-Clause, libpng License |
| libtiff | libtiff License (BSD-like) |
| libvips | LGPLv3 |
| libwebp | New BSD License |
| libxml2 | MIT Licence |
| mozjpeg | zlib License, IJG License, BSD-3-Clause |
| pango | LGPLv3 |
| pixman | MIT Licence |
| proxy-libintl | LGPLv3 |
| zlib-ng | zlib Licence |
Use of libraries under the terms of the LGPLv3 is via the "any later version" clause of the LGPLv2 or LGPLv2.1.
Please report any errors or omissions via https://github.com/lovell/sharp-libvips/issues/new