| |
|
|
| |
| FROM node:22-slim AS builder |
| WORKDIR /app |
|
|
| |
| RUN corepack enable |
|
|
| |
| COPY package.json pnpm-lock.yaml ./ |
| RUN pnpm install --frozen-lockfile |
|
|
| |
| COPY . . |
| RUN pnpm run build |
|
|
| |
| FROM node:22-slim AS runner |
|
|
| |
| |
| RUN corepack enable |
| WORKDIR /home/node/app |
| RUN chown -R node:node /home/node/app |
| USER node |
| ENV HOME=/home/node \ |
| PATH=/home/node/.local/bin:$PATH |
|
|
| |
| COPY --chown=node package.json pnpm-lock.yaml ./ |
| RUN pnpm install --prod --frozen-lockfile |
|
|
| |
| COPY --chown=node --from=builder /app/build ./build |
|
|
| ENV NODE_ENV=production \ |
| PORT=7860 \ |
| HOST=0.0.0.0 |
| EXPOSE 7860 |
|
|
| CMD ["node", "build/index.js"] |
|
|