Feat: docker compose done

This commit is contained in:
2025-04-18 20:23:21 +08:00
parent 947c10f231
commit 13ad4d7439
6 changed files with 125 additions and 2 deletions

31
backend/Dockerfile Normal file
View File

@@ -0,0 +1,31 @@
FROM node:22 AS deps
WORKDIR /app
COPY ./package.json ./package-lock.json .
RUN npm ci --omit=dev
#####
FROM node:22 AS devdeps
WORKDIR /app
COPY ./package.json ./package-lock.json ./tsconfig.json .
RUN npm ci
#####
FROM node:22 AS build
WORKDIR /app
COPY . /app
COPY --from=devdeps /app/node_modules /app/node_modules
RUN npm run build
#####
FROM gcr.io/distroless/nodejs22-debian12
WORKDIR /app
COPY --from=build /app /app
COPY --from=deps /app/node_modules /app/node_modules
CMD ["dist/index.js"]

View File

@@ -5,7 +5,7 @@
"main": "index.js",
"scripts": {
"test": "vitest run --coverage",
"build": "tsc",
"build": "npx tsc",
"start": "node dist/index.js",
"dev": "concurrently --raw \"tsc -w \" \"nodemon dist/index.js\""
},