Files
kestrelos/Dockerfile
Renovate Bot 25e273a12a
Some checks failed
renovate/artifacts Artifact file update failure
ci/woodpecker/pr/pr Pipeline was successful
chore(deps): pin dependencies
2026-02-22 06:01:21 +00:00

26 lines
584 B
Docker

FROM node:24-slim@sha256:a81a03dd965b4052269a57fac857004022b522a4bf06e7a739e25e18bce45af2 AS builder
WORKDIR /app
COPY package.json package-lock.json* ./
RUN npm ci
COPY . .
RUN npm run build
# Run stage
FROM node:24-slim@sha256:a81a03dd965b4052269a57fac857004022b522a4bf06e7a739e25e18bce45af2 AS runner
# Run as non-root user (node user exists in official image)
USER node
WORKDIR /app
ENV HOST=0.0.0.0
# Copy app as node user (builder stage ran as root)
COPY --from=builder --chown=node:node /app/.output ./.output
EXPOSE 3000 8089
CMD ["node", ".output/server/index.mjs"]