brestok commited on
Commit
3cf0ecf
·
1 Parent(s): 7366292
Files changed (2) hide show
  1. Dockerfile +13 -10
  2. package.json +1 -1
Dockerfile CHANGED
@@ -1,18 +1,21 @@
1
- FROM node:22-slim
2
 
3
  WORKDIR /app
4
- RUN chown node:node /app
5
 
6
- USER node
7
- ENV PATH="/home/node/.local/bin:$PATH"
 
 
 
 
 
 
 
8
 
9
- COPY --chown=node package*.json ./
10
- RUN npm ci --include=dev
11
 
12
- COPY --chown=node . /app
13
- RUN npm run tsoa:generate
14
- RUN npm run build
15
- RUN npm prune --omit=dev
16
 
17
  ENV NODE_ENV=production
18
  ENV PORT=7860
 
1
+ FROM node:22-slim AS builder
2
 
3
  WORKDIR /app
 
4
 
5
+ COPY package*.json ./
6
+ RUN npm ci
7
+
8
+ COPY . .
9
+ RUN npm run tsoa:generate && npm run build
10
+
11
+ FROM node:22-slim
12
+
13
+ WORKDIR /app
14
 
15
+ COPY package*.json ./
16
+ RUN npm ci --omit=dev
17
 
18
+ COPY --from=builder /app/dist ./dist
 
 
 
19
 
20
  ENV NODE_ENV=production
21
  ENV PORT=7860
package.json CHANGED
@@ -7,7 +7,7 @@
7
  "test": "echo \"Error: no test specified\" && exit 1",
8
  "dev": "nodemon src/server.ts",
9
  "build": "tsc && npm run copy-data",
10
- "copy-data": "xcopy \"src\\data\" \"dist\\data\" /E /I /Y",
11
  "tsoa:spec": "tsoa spec",
12
  "tsoa:routes": "tsoa routes",
13
  "tsoa:generate": "npm run tsoa:spec && npm run tsoa:routes",
 
7
  "test": "echo \"Error: no test specified\" && exit 1",
8
  "dev": "nodemon src/server.ts",
9
  "build": "tsc && npm run copy-data",
10
+ "copy-data": "mkdir -p dist && cp -r src/data dist/data",
11
  "tsoa:spec": "tsoa spec",
12
  "tsoa:routes": "tsoa routes",
13
  "tsoa:generate": "npm run tsoa:spec && npm run tsoa:routes",