fix: add libc6-compat so tailwind oxide binary loads on alpine

The prebuilt @tailwindcss/oxide and lightningcss .node bindings expect a
glibc-compat runtime. On bare Alpine musl they fail to load during the
install-time probe, which cascades into `npm ci` exiting 1 in the
Portainer build.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
Dorian
2026-04-21 11:39:59 +01:00
parent fdc871859b
commit 469ef529b6

View File

@@ -6,6 +6,11 @@
FROM node:24.15.0-alpine3.23 AS build
WORKDIR /app
# libc6-compat: the prebuilt @tailwindcss/oxide and lightningcss .node bindings
# are linked against a glibc-compatible runtime and fail to load on bare Alpine
# musl otherwise — which kills `npm ci` during its postinstall probe.
RUN apk add --no-cache libc6-compat
# Copy lockfile first so `npm ci` layer caches when only source changes.
COPY package.json package-lock.json ./
RUN npm ci --no-audit --no-fund