FROM node:20-alpine AS node

FROM mcr.microsoft.com/dotnet/sdk:8.0-alpine

RUN apk add --no-cache bash sudo shadow

COPY --from=node /usr/local/bin /usr/local/bin
COPY --from=node /usr/local/lib/node_modules /usr/local/lib/node_modules

LABEL "com.azure.dev.pipelines.agent.handler.node.path"="/usr/local/bin/node"

RUN apk add --no-cache icu-data-full icu-libs
RUN apk add --no-cache tzdata
RUN apk add --no-cache fontconfig
RUN apk add ttf-dejavu && \
    apk add msttcorefonts-installer && \
    apk add ttf-dejavu && \
    update-ms-fonts && \
    fc-cache -f

RUN ln -s /usr/lib/libfontconfig.so.1 /usr/lib/libfontconfig.so && \
    ln -s /lib/libuuid.so.1 /usr/lib/libuuid.so.1 && \
    ln -s /lib/libc.musl-x86_64.so.1 /usr/lib/libc.musl-x86_64.so.1
ENV LD_LIBRARY_PATH=/usr/lib

ENV TZ=Europe/Berlin
ENV DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=false
RUN mkdir /app
WORKDIR /app