-
Notifications
You must be signed in to change notification settings - Fork 8
Expand file tree
/
Copy pathDockerfile
More file actions
31 lines (26 loc) · 794 Bytes
/
Dockerfile
File metadata and controls
31 lines (26 loc) · 794 Bytes
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
FROM makeomatic/node:$NODE_VERSION
ENV NCONF_NAMESPACE=MS_MAILER \
NODE_ENV=$NODE_ENV \
COREPACK_ENABLE_NETWORK=1
WORKDIR /src
# pnpm fetch does require only lockfile
COPY --chown=node:node pnpm-lock.yaml ./
RUN \
apk --update --upgrade \
add ca-certificates --virtual .buildDeps git ca-certificates openssl g++ make python3 linux-headers \
&& update-ca-certificates \
&& corepack install -g pnpm@9 \
&& chown node:node /src \
&& su node sh -c "cd /src && pnpm fetch --prod" \
&& su node sh -c "rm -rf ~/.cache && pnpm store prune" \
&& apk del .buildDeps \
&& rm -rf \
/tmp/* \
/root/.node-gyp \
/root/.npm \
/etc/apk/cache/* \
/var/cache/apk/*
USER node
COPY --chown=node:node . /src
RUN pnpm install --offline --prod
CMD [ "./node_modules/.bin/mfleet" ]