diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..67ab480 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,3 @@ +node_modules +samples +dist diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..d8bc860 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,19 @@ +FROM node:16-slim as builder + +COPY . /app +WORKDIR /app +RUN npm ci && npm run build + +FROM node:16-slim + +COPY --from=builder /app/dist/ /app/ +COPY --from=builder /app/package.json /app/ +COPY --from=builder /app/package-lock.json /app/ +COPY --from=builder /app/static/ /app/static/ +COPY --from=builder /app/templates/ /app/templates/ + +WORKDIR /app + +RUN npm install --production + +CMD ["/usr/local/bin/node", "index.js"]