From a92b90768940bee61d6986f9bbec227d9fa268a9 Mon Sep 17 00:00:00 2001 From: Chewbaccalakis Date: Fri, 17 Jul 2026 01:05:23 -0700 Subject: [PATCH] dockerize --- .dockerignore | 7 +++++++ Dockerfile | 19 +++++++++++++++++++ 2 files changed, 26 insertions(+) create mode 100644 .dockerignore create mode 100644 Dockerfile diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..5b88e1e --- /dev/null +++ b/.dockerignore @@ -0,0 +1,7 @@ +node_modules +dist +.git +.DS_Store +Dockerfile +.dockerignore +README.md diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..5d7fdeb --- /dev/null +++ b/Dockerfile @@ -0,0 +1,19 @@ +# Build stage: compile TypeScript and bundle with Vite +FROM node:22-alpine AS build +WORKDIR /app +COPY package.json package-lock.json ./ +RUN npm ci +COPY . . +RUN npm run build + +# Runtime stage: serve the built app with Express +FROM node:22-alpine +WORKDIR /app +ENV NODE_ENV=production +COPY package.json package-lock.json ./ +RUN npm ci --omit=dev +COPY server.js ./ +COPY --from=build /app/dist ./dist +EXPOSE 3000 +USER node +CMD ["node", "server.js"]