mirror of
https://github.com/Redume/Kekkai.git
synced 2025-02-23 04:33:11 +03:00
39 lines
979 B
Text
39 lines
979 B
Text
|
FROM node:20 as shared-config
|
||
|
# Устанавливаем зависимости shared/config
|
||
|
WORKDIR /
|
||
|
COPY ./shared/config/package*.json .
|
||
|
RUN npm install
|
||
|
|
||
|
FROM node:20 as shared-database
|
||
|
# Устанавливаем зависимости shared/database
|
||
|
WORKDIR /
|
||
|
COPY ./shared/database/package*.json .
|
||
|
RUN npm install
|
||
|
|
||
|
FROM node:20 as shared-logger
|
||
|
# Устанавливаем зависимости shared/logger
|
||
|
WORKDIR /
|
||
|
COPY ./shared/logger/package*.json .
|
||
|
RUN npm install
|
||
|
|
||
|
FROM node:20 as server
|
||
|
|
||
|
WORKDIR /
|
||
|
|
||
|
# Устанавливаем зависимости server
|
||
|
COPY ./server/package*.json ./
|
||
|
RUN npm install
|
||
|
|
||
|
# Копируем зависимости shared
|
||
|
COPY --from=shared-config /node_modules /node_modules
|
||
|
COPY --from=shared-database /node_modules /node_modules
|
||
|
COPY --from=shared-logger /node_modules /node_modules
|
||
|
|
||
|
# Копируем все остальные файлы
|
||
|
COPY ./server/ ./
|
||
|
COPY ./shared/ ./shared/
|
||
|
|
||
|
EXPOSE 3000
|
||
|
|
||
|
CMD ["node", "main.js"]
|