Deduplikace typů a sloučení kontejnerů

- Zavedení yarn workspaces
- Sloučení klienta a serveru do jednoho Docker kontejneru
- Společný dockerfile, builder
- Zbavení se nginx (není již potřeba)
This commit is contained in:
2023-07-22 19:37:03 +02:00
parent 0d0c5cb946
commit 3c0e8b2297
31 changed files with 1638 additions and 2527 deletions

46
Dockerfile Normal file
View File

@@ -0,0 +1,46 @@
# Builder
FROM node:18-alpine3.18 as builder
ENV LANG cs_CZ.UTF-8
WORKDIR /build
COPY package.json .
COPY yarn.lock .
COPY server/package.json ./server/
COPY client/package.json ./client/
RUN yarn install --frozen-lockfile
COPY server/tsconfig.json ./server/
COPY server/src ./server/src/
COPY client/tsconfig.json ./client/
COPY client/src ./client/src
COPY client/public ./client/public
COPY types ./types/
WORKDIR /build/server
RUN yarn build
WORKDIR /build/client
RUN yarn build
# Runner
FROM node:18-alpine3.18
ENV NODE_ENV production
WORKDIR /app
COPY --from=builder /build/node_modules ./node_modules
COPY --from=builder /build/server/dist ./
COPY --from=builder /build/client/build ./public
COPY /server/.env.production ./server/src
RUN echo "Test root" && ls -la
EXPOSE 3000
CMD [ "node", "./server/src/index.js" ]