-
Notifications
You must be signed in to change notification settings - Fork 4
/
Dockerfile
34 lines (25 loc) · 988 Bytes
/
Dockerfile
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
# ---- Base Image ----
ARG PLATFORM=""
FROM hmctspublic.azurecr.io/base/node${PLATFORM}:18-alpine as base
ENV PUPPETEER_SKIP_DOWNLOAD=true
ENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true
ENV NODE_OPTIONS=--openssl-legacy-provider
USER root
RUN apk update \
&& apk add bzip2 patch python3 py3-pip make gcc g++ \
&& rm -rf /var/lib/apt/lists/* \
&& export PATH="$HOME/.yarn/bin:$HOME/.config/yarn/global/node_modules/.bin:$PATH"
COPY . .
RUN chown -R hmcts:hmcts .
USER hmcts
RUN yarn config set yarn-offline-mirror ~/npm-packages-offline-cache && \
yarn config set yarn-offline-mirror-pruning true && \
yarn install --prefer-offline --ignore-optional --network-timeout 1200000
# ---- Build Image ----
FROM base as build
RUN yarn sass
RUN sleep 1 && yarn install --ignore-optional --production --network-timeout 1200000 && yarn cache clean
# ---- Runtime Image ----
FROM hmctspublic.azurecr.io/base/node${PLATFORM}:18-alpine as runtime
COPY --from=build $WORKDIR .
EXPOSE 3100