change build logic

This commit is contained in:
Emily
2024-06-26 03:22:22 +02:00
parent 62f555f86f
commit 9a2cde0954
9 changed files with 302 additions and 26 deletions

View File

@@ -1,7 +1,43 @@
FROM node:21-alpine
ARG NODE_VERSION=21
FROM node:${NODE_VERSION}-alpine as base
ENV NODE_ENV=development
# Build stage
FROM base as build
RUN npm install -g pnpm
COPY --link broker/package.json broker/pnpm-lock.yaml home/app/
COPY --link shared/package.json shared/pnpm-lock.yaml /home/shared/
WORKDIR /home/app
COPY package.json pnpm-lock.yaml ./
RUN npm install -g pnpm && pnpm install --prod --frozen-lockfile
COPY ./dist /home/app/dist
RUN pnpm install --frozen-lockfile
WORKDIR /home/shared
RUN pnpm install --frozen-lockfile
COPY --link ../broker /home/app
COPY --link ../shared /home/shared
WORKDIR /home/app
RUN pnpm run build_all
RUN pnpm prune
# Final stage
FROM base
COPY --from=build /home/app /home/app
WORKDIR /home/app
EXPOSE ${PORT}
CMD ["node", "dist/broker/src/index.js"]
CMD ["node", "dist/app/src/index.js"]

View File

@@ -27,7 +27,8 @@
"build": "ts-node scripts/build.ts",
"create_db": "cd scripts && ts-node create_database.ts",
"build_all": "npm run compile && npm run build && npm run create_db",
"docker-build": "node scripts/prepare_docker.js && docker build -t litlyx-broker ."
"docker-build": "docker build -t litlyx-broker -f Dockerfile ../",
"docker-inspect": "docker run -it litlyx-broker sh"
},
"keywords": [],
"author": "Emily",

View File

@@ -1,7 +0,0 @@
const child = require('child_process');
const p = child.exec('pnpm run compile && pnpm run build && pnpm run create_db');
p.stdout.on('data', (e) => { console.log(e.toString()); });
p.stderr.on('data', (e) => { console.log(e.toString()); });