-
Notifications
You must be signed in to change notification settings - Fork 1
/
Dockerfile
33 lines (24 loc) · 869 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
FROM node:16-alpine AS build-env
WORKDIR /
# Install .NET 3.1 for yui
RUN apk add --update --no-cache bash wget libintl libffi-dev openssl1.1-compat-dev dotnet7-sdk dotnet6-sdk
ENV DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=true
RUN wget https://dot.net/v1/dotnet-install.sh -O dotnet-install.sh
RUN chmod +x dotnet-install.sh
RUN ./dotnet-install.sh --channel 3.1 --install-dir /usr/share/dotnet3
RUN ln -s /usr/share/dotnet3/dotnet /usr/bin/dotnet3
RUN ln -s /usr/lib/libssl.so.47.0.6 /usr/lib/libssl.so.1.0.0
COPY ./tools ./tools
# build app
WORKDIR /usr/src/app
COPY package*.json ./
COPY yarn*.lock ./
RUN yarn global add typescript@5.0.4
RUN yarn install --network-timeout 1000000
COPY . .
RUN yarn run build
# Prune the dev dependencies
RUN yarn install --production --network-timeout 1000000
ENV NODE_ENV=production
ENV DOTNET_NOLOGO=true
CMD yarn run start