pngwn commited on
Commit ·
58d9edc
1
Parent(s): a8898de
fix build
Browse files- Dockerfile +10 -8
Dockerfile
CHANGED
|
@@ -18,19 +18,21 @@ RUN pnpm run build
|
|
| 18 |
# ---------- run stage ----------
|
| 19 |
FROM node:22-slim AS runner
|
| 20 |
|
| 21 |
-
#
|
| 22 |
-
|
| 23 |
-
|
| 24 |
-
|
| 25 |
-
|
| 26 |
-
|
|
|
|
|
|
|
| 27 |
|
| 28 |
# Production dependencies only (the `prepare` script no-ops without devDeps)
|
| 29 |
-
COPY --chown=
|
| 30 |
RUN pnpm install --prod --frozen-lockfile
|
| 31 |
|
| 32 |
# Built standalone Node server + prerendered assets
|
| 33 |
-
COPY --chown=
|
| 34 |
|
| 35 |
ENV NODE_ENV=production \
|
| 36 |
PORT=7860 \
|
|
|
|
| 18 |
# ---------- run stage ----------
|
| 19 |
FROM node:22-slim AS runner
|
| 20 |
|
| 21 |
+
# The node image already ships a non-root `node` user at UID 1000 — exactly what
|
| 22 |
+
# HF Spaces expects. Reuse it rather than creating a colliding user.
|
| 23 |
+
RUN corepack enable
|
| 24 |
+
WORKDIR /home/node/app
|
| 25 |
+
RUN chown -R node:node /home/node/app
|
| 26 |
+
USER node
|
| 27 |
+
ENV HOME=/home/node \
|
| 28 |
+
PATH=/home/node/.local/bin:$PATH
|
| 29 |
|
| 30 |
# Production dependencies only (the `prepare` script no-ops without devDeps)
|
| 31 |
+
COPY --chown=node package.json pnpm-lock.yaml ./
|
| 32 |
RUN pnpm install --prod --frozen-lockfile
|
| 33 |
|
| 34 |
# Built standalone Node server + prerendered assets
|
| 35 |
+
COPY --chown=node --from=builder /app/build ./build
|
| 36 |
|
| 37 |
ENV NODE_ENV=production \
|
| 38 |
PORT=7860 \
|