docker
Some checks failed
Run Unit-Tests / test_frontend (push) Has been cancelled
Run Unit-Tests / test_backend (push) Has been cancelled

This commit is contained in:
Bastian Wagner
2026-02-16 15:03:47 +01:00
parent 57c1faa3ba
commit 8545ef3b36

View File

@@ -1,31 +1,27 @@
FROM node:22 AS development # -------- BUILD --------
WORKDIR /api/src FROM node:22 AS build
WORKDIR /app
COPY package*.json ./ COPY package*.json ./
RUN npm install RUN npm ci
COPY . . COPY . .
RUN npm run build RUN npm run build
################ # -------- PROD DEPS (nur prod node_modules) --------
## PRODUCTION ## FROM node:22 AS deps
################ WORKDIR /app
# Build another image named production
FROM node:22 AS production
# Set node env to prod COPY package*.json ./
ARG NODE_ENV=production RUN npm ci --omit=dev && npm cache clean --force
ENV NODE_ENV=${NODE_ENV}
# Set Working Directory # -------- RUNTIME --------
WORKDIR /api/src FROM node:22-slim AS runtime
ENV NODE_ENV=production
WORKDIR /app
# Copy all from development stage COPY --from=deps /app/node_modules ./node_modules
COPY --from=development /api/src/ . COPY --from=build /app/dist ./dist
COPY package*.json ./
EXPOSE 4000 EXPOSE 4000
# Run app
CMD ["node", "dist/src/main"] CMD ["node", "dist/src/main"]
# Example Commands to build and run the dockerfile
# docker build -t thomas-nest .
# docker run thomas-nest