From 42d2a260821ac127960dd2d4e8332fe3d674bbb9 Mon Sep 17 00:00:00 2001 From: sherl Date: Wed, 31 Dec 2025 05:46:30 +0100 Subject: [PATCH] chore: add Dockerfile and dockerignore --- .dockerignore | 1 + Dockerfile | 21 +++++++++++++++++++++ 2 files changed, 22 insertions(+) create mode 100644 .dockerignore create mode 100644 Dockerfile diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..2eea525 --- /dev/null +++ b/.dockerignore @@ -0,0 +1 @@ +.env \ No newline at end of file diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..be9eb65 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,21 @@ +# Credit: https://www.digitalocean.com/community/tutorials/how-to-build-a-node-js-application-with-docker + +FROM node:24-trixie-slim AS builder + +WORKDIR /app +COPY ./kittyurl-frontend/package*.json ./ +RUN npm ci && npm cache clean --force +COPY ./kittyurl-frontend/ . +RUN npm run build + +FROM node:24-trixie-slim AS production + +WORKDIR /app +RUN addgroup --gid 1001 nodejs && \ + adduser --gid 1001 --uid 1001 nodejs +COPY --from=builder --chown=nodejs:nodejs /app /app +USER nodejs + +EXPOSE 6568 + +CMD ["npm", "run", "preview", "--", "--host", "0.0.0.0", "--port", "6568"]