From 23418b3a097c610748b105d72fb464c9984a25b9 Mon Sep 17 00:00:00 2001 From: Shakar <5h4k4r.b4kr@gmail.com> Date: Sun, 26 Feb 2023 14:50:49 +0300 Subject: [PATCH] Builds Docker image of backend component with multi-stage Dockerfile Updates package.json `npm start` command Delete unnecessary `npm run start` commands Signed-off-by: Shakar <5h4k4r.b4kr@gmail.com> --- backend/Dockerfile | 22 ++++++++++++++++------ backend/package.json | 2 +- docker-compose.yml | 3 +-- 3 files changed, 18 insertions(+), 9 deletions(-) diff --git a/backend/Dockerfile b/backend/Dockerfile index e4d283a77..bbbe2a1a7 100644 --- a/backend/Dockerfile +++ b/backend/Dockerfile @@ -1,18 +1,28 @@ +FROM node:16-bullseye-slim AS build + +WORKDIR /app +COPY package*.json ./ + +RUN npm ci --only-production --ignore-scripts + +COPY . . + +RUN npm run build + + + FROM node:16-bullseye-slim WORKDIR /app - -COPY package.json package-lock.json ./ - -# RUN npm ci --only-production --ignore-scripts -# "prepare": "cd .. && npm install" +COPY package*.json ./ RUN npm ci --only-production -COPY . . +COPY --from=build /app . HEALTHCHECK --interval=10s --timeout=3s --start-period=10s \ CMD node healthcheck.js +EXPOSE 4000 CMD ["npm", "run", "start"] diff --git a/backend/package.json b/backend/package.json index 89bd52b07..795fc68ed 100644 --- a/backend/package.json +++ b/backend/package.json @@ -48,7 +48,7 @@ "version": "1.0.0", "main": "src/index.js", "scripts": { - "start": "npm run build && node build/index.js", + "start": "node build/index.js", "dev": "nodemon", "swagger-autogen": "node ./swagger/index.ts", "build": "rimraf ./build && tsc && cp -R ./src/templates ./build", diff --git a/docker-compose.yml b/docker-compose.yml index 6143695f5..f1b8f7d05 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,4 +1,4 @@ -version: '3' +version: "3" services: nginx: @@ -22,7 +22,6 @@ services: depends_on: - mongo image: infisical/backend - command: npm run start env_file: .env environment: - NODE_ENV=production