mirror of
https://github.com/aleksilassila/reiverr.git
synced 2026-04-22 08:45:13 +02:00
70 lines
2.4 KiB
Docker
70 lines
2.4 KiB
Docker
FROM --platform=linux/amd64 node:18-alpine as pre-production
|
|
|
|
RUN mkdir -p /usr/src/app
|
|
WORKDIR /usr/src/app
|
|
|
|
#COPY . .
|
|
|
|
COPY package.json .
|
|
COPY package-lock.json .
|
|
|
|
COPY backend/package.json ./backend/package.json
|
|
# COPY backend/package-lock.json ./backend/package-lock.json
|
|
|
|
COPY frontend/package.json ./frontend/package.json
|
|
# COPY frontend/package-lock.json ./frontend/package-lock.json
|
|
|
|
COPY shared/package.json ./shared/package.json
|
|
# COPY shared/package-lock.json ./shared/package-lock.json
|
|
|
|
COPY torrent-stream.plugin/package.json ./torrent-stream.plugin/package.json
|
|
# COPY torrent-stream.plugin/package-lock.json ./torrent-stream.plugin/package-lock.json
|
|
|
|
COPY jellyfin.plugin/package.json ./jellyfin.plugin/package.json
|
|
# COPY jellyfin.plugin/package-lock.json ./jellyfin.plugin/package-lock.json
|
|
|
|
RUN npm i
|
|
|
|
COPY . .
|
|
|
|
RUN npm run build
|
|
|
|
FROM --platform=linux/amd64 node:18-alpine as production
|
|
|
|
RUN mkdir -p /usr/src/app
|
|
WORKDIR /usr/src/app
|
|
|
|
ENV NODE_ENV=production
|
|
|
|
COPY --from=pre-production /usr/src/app/package.json ./package.json
|
|
COPY --from=pre-production /usr/src/app/package-lock.json ./package-lock.json
|
|
COPY --from=pre-production /usr/src/app/node_modules ./node_modules
|
|
|
|
COPY --from=pre-production /usr/src/app/shared ./shared
|
|
COPY --from=pre-production /usr/src/app/torrent-stream.plugin ./torrent-stream.plugin
|
|
COPY --from=pre-production /usr/src/app/jellyfin.plugin ./jellyfin.plugin
|
|
|
|
COPY --from=pre-production /usr/src/app/backend/package.json ./backend/package.json
|
|
# # COPY --from=pre-production /usr/src/app/backend/package-lock.json ./backend/package-lock.json
|
|
COPY --from=pre-production /usr/src/app/backend/tsconfig.json ./backend/tsconfig.json
|
|
COPY --from=pre-production /usr/src/app/backend/tsconfig.build.json ./backend/tsconfig.build.json
|
|
COPY --from=pre-production /usr/src/app/backend/dist ./backend/dist
|
|
COPY --from=pre-production /usr/src/app/backend/node_modules ./backend/node_modules
|
|
# COPY --from=pre-production /usr/src/app/backend/packages ./backend/packages
|
|
# VOLUME ./backend/packages
|
|
|
|
# COPY backend/package.json ./backend/package.json
|
|
# COPY backend/package-lock.json ./backend/package-lock.json
|
|
# COPY backend/tsconfig.json ./backend/tsconfig.json
|
|
# COPY backend/tsconfig.build.json ./backend/tsconfig.build.json
|
|
|
|
#RUN npm ci --omit dev
|
|
|
|
RUN mkdir -p ./backend/config
|
|
RUN mkdir -p ./backend/plugins
|
|
|
|
RUN ln -s /usr/src/app/backend/config /config
|
|
RUN ln -s /usr/src/app/backend/plugins /plugins
|
|
|
|
CMD [ "npm", "run", "start:prod" ]
|