From af956a277983ac3499ff709dbdc835b5caf4f51f Mon Sep 17 00:00:00 2001 From: Khalid Abdi Date: Sat, 13 Jun 2026 18:56:14 +0300 Subject: [PATCH] backend: skip native build scripts in Docker build stage MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The build stage ran `npm ci`, which tried to compile better-sqlite3 — a dev-only transitive dependency of @better-auth/cli — and failed in Alpine for lack of Python/node-gyp. The build step is just `tsc` (no native binaries needed) and better-sqlite3 is never used at runtime (the prod stage omits dev deps), so install dev deps with --ignore-scripts. Co-Authored-By: Claude Opus 4.8 --- backend/Dockerfile | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/backend/Dockerfile b/backend/Dockerfile index ffc1ffe..7b3ec26 100644 --- a/backend/Dockerfile +++ b/backend/Dockerfile @@ -2,7 +2,11 @@ FROM node:22-alpine AS build WORKDIR /app COPY package*.json ./ -RUN npm ci +# --ignore-scripts skips native postinstall builds (e.g. better-sqlite3, a +# dev-only dependency of @better-auth/cli that needs Python/node-gyp). The build +# step is just `tsc`, which needs no compiled binaries, and better-sqlite3 is +# never used at runtime (the prod stage omits dev deps). +RUN npm ci --ignore-scripts COPY . . RUN npm run build