-
Notifications
You must be signed in to change notification settings - Fork 65
Expand file tree
/
Copy pathDockerfile
More file actions
73 lines (52 loc) · 1.78 KB
/
Copy pathDockerfile
File metadata and controls
73 lines (52 loc) · 1.78 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
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 backend/packages/reiverr-plugin/package.json ./backend/packages/reiverr-plugin/package.json
COPY backend/packages/jellyfin.plugin/package.json ./backend/packages/jellyfin.plugin/package.json
# COPY backend/packages/jellyfin.plugin/package-lock.json ./backend/packages/jellyfin.plugin/package-lock.json
COPY backend/packages/torrent-stream.plugin/package.json ./backend/packages/torrent-stream.plugin/package.json
# COPY backend/packages/torrent-stream.plugin/package-lock.json ./backend/packages/torrent-stream.plugin/package-lock.json
RUN npm i
RUN npm ci --prefix backend
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/backend/dist ./dist
COPY --from=pre-production /usr/src/app/backend/node_modules ./node_modules
COPY --from=pre-production /usr/src/app/backend/packages ./packages
VOLUME ./packages
COPY backend/package.json .
COPY backend/package-lock.json .
COPY backend/tsconfig.json .
COPY backend/tsconfig.build.json .
#RUN npm ci --omit dev
RUN mkdir -p ./config
RUN mkdir -p ./plugins
RUN ln -s /usr/src/app/config /config
RUN ln -s /usr/src/app/plugins /plugins
CMD [ "npm", "run", "start:prod" ]
#FROM node:18 as development
#
#ENV NODE_ENV=development
#
#RUN mkdir -p /usr/src/app
#WORKDIR /usr/src/app
#
#COPY package.json .
#COPY package-lock.json .
#
#RUN npm i
#
#RUN mkdir -p ./config
#
#RUN ln -s /usr/src/app/config /config
#
#CMD [ "npm", "run", "dev" ]