Files
2026-10-29 11:57:29 +01:00

36 lines
623 B
Docker

FROM node:22-bookworm-slim AS build
WORKDIR /app
COPY package.json package-lock.json ./
RUN npm ci
COPY scripts/ ./scripts/
COPY client/ ./client/
RUN node scripts/vendor.mjs
FROM node:22-bookworm-slim AS runtime
WORKDIR /app
RUN node -e "require('node:sqlite')"
COPY package.json package-lock.json ./
RUN npm ci --omit=dev
COPY client/ ./client/
COPY server/ ./server/
COPY shared/ ./shared/
COPY --from=build /app/client/vendor/ ./client/vendor/
RUN mkdir -p /data && chown node:node /data
ENV ASSETAPP_DATA_DIR=/data
VOLUME ["/data"]
ENV PORT=8080
EXPOSE 8080
USER node
CMD ["node", "server/supervisor.mjs"]