From eeddc1f620c87a8a580bb8489a6e30f4539d3426 Mon Sep 17 00:00:00 2001 From: AJ Mabry <81774843+aj-bw@users.noreply.github.com> Date: Tue, 17 Jun 2025 13:29:39 -0400 Subject: [PATCH] update dockerfiles --- src/Admin/Dockerfile | 31 +++++++++++++++++++++++-------- src/Admin/wwwroot/favicon.ico | Bin 34494 -> 0 bytes src/Billing/Dockerfile | 1 + src/Events/Dockerfile | 1 + src/EventsProcessor/Dockerfile | 1 + src/Icons/Dockerfile | 1 + src/Identity/Dockerfile | 1 + src/Notifications/Dockerfile | 1 + 8 files changed, 29 insertions(+), 8 deletions(-) delete mode 100644 src/Admin/wwwroot/favicon.ico diff --git a/src/Admin/Dockerfile b/src/Admin/Dockerfile index 412adece29..1e7ac1b489 100644 --- a/src/Admin/Dockerfile +++ b/src/Admin/Dockerfile @@ -1,3 +1,14 @@ +############################################### +# Node.js build stage # +############################################### +FROM node:20-alpine AS node-build + +WORKDIR /app +COPY src/Admin/package*.json ./ +COPY /src/Admin/ . +RUN npm ci +RUN npm run build + ############################################### # Build stage # ############################################### @@ -20,12 +31,13 @@ RUN if [ "$TARGETPLATFORM" = "linux/amd64" ]; then \ && echo "RID=$RID" > /tmp/rid.txt # Set up Node -ARG NODE_VERSION=20 -RUN curl -fsSL https://deb.nodesource.com/setup_${NODE_VERSION}.x | bash - \ - && apt-get update \ - && apt-get install -y nodejs \ - && npm install -g npm@latest && \ - rm -rf /var/lib/apt/lists/* +# ARG NODE_VERSION=20 +# RUN apk add --no-cache "nodejs~${NODE_VERSION}" "npm" +# RUN curl -fsSL https://deb.nodesource.com/setup_${NODE_VERSION}.x | bash - \ +# && apt-get update \ +# && apt-get install -y nodejs \ +# && npm install -g npm@latest && \ +# rm -rf /var/lib/apt/lists/* # Copy required project files WORKDIR /source @@ -33,11 +45,11 @@ COPY . ./ # Restore project dependencies and tools WORKDIR /source/src/Admin -RUN npm ci +#RUN npm ci RUN . /tmp/rid.txt && dotnet restore -r $RID # Build project -RUN npm run build +#RUN npm run build RUN . /tmp/rid.txt && dotnet publish \ -c release \ --no-restore \ @@ -60,12 +72,15 @@ ENV DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=false EXPOSE 5000 RUN apk add curl \ + icu-libs \ + tzdata \ && apk add --no-cache --repository=http://dl-cdn.alpinelinux.org/alpine/edge/community gosu \ && rm -rf /var/cache/apk/* # Copy app from the build stage WORKDIR /app COPY --from=build /source/src/Admin/out /app +COPY --from=node-build /app/wwwroot /app/wwwroot COPY ./src/Admin/entrypoint.sh /entrypoint.sh RUN chmod +x /entrypoint.sh HEALTHCHECK CMD curl -f http://localhost:5000/alive || exit 1 diff --git a/src/Admin/wwwroot/favicon.ico b/src/Admin/wwwroot/favicon.ico deleted file mode 100644 index 841840dfe16e76960ab521dc6ace6953f807f84b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 34494 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 diff --git a/src/Billing/Dockerfile b/src/Billing/Dockerfile index 96d325ec28..0bdf218338 100644 --- a/src/Billing/Dockerfile +++ b/src/Billing/Dockerfile @@ -51,6 +51,7 @@ ENV DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=false EXPOSE 5000 RUN apk add curl \ + icu-libs \ && apk add --no-cache --repository=http://dl-cdn.alpinelinux.org/alpine/edge/community gosu \ && rm -rf /var/cache/apk/* diff --git a/src/Events/Dockerfile b/src/Events/Dockerfile index ed611ba1ff..0ae1b06b19 100644 --- a/src/Events/Dockerfile +++ b/src/Events/Dockerfile @@ -51,6 +51,7 @@ ENV DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=false EXPOSE 5000 RUN apk add curl \ + icu-libs \ && apk add --no-cache --repository=http://dl-cdn.alpinelinux.org/alpine/edge/community gosu \ && rm -rf /var/cache/apk/* diff --git a/src/EventsProcessor/Dockerfile b/src/EventsProcessor/Dockerfile index f3ca04dd51..ac2032aa39 100644 --- a/src/EventsProcessor/Dockerfile +++ b/src/EventsProcessor/Dockerfile @@ -51,6 +51,7 @@ ENV DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=false EXPOSE 5000 RUN apk add curl \ + icu-libs \ && apk add --no-cache --repository=http://dl-cdn.alpinelinux.org/alpine/edge/community gosu \ && rm -rf /var/cache/apk/* diff --git a/src/Icons/Dockerfile b/src/Icons/Dockerfile index ed3c18eac0..5015399bb6 100644 --- a/src/Icons/Dockerfile +++ b/src/Icons/Dockerfile @@ -50,6 +50,7 @@ ENV DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=false EXPOSE 5000 RUN apk add curl \ + icu-libs \ && apk add --no-cache --repository=http://dl-cdn.alpinelinux.org/alpine/edge/community gosu \ && rm -rf /var/cache/apk/* diff --git a/src/Identity/Dockerfile b/src/Identity/Dockerfile index 93e6001100..d8712f0670 100644 --- a/src/Identity/Dockerfile +++ b/src/Identity/Dockerfile @@ -51,6 +51,7 @@ ENV DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=false EXPOSE 5000 RUN apk add curl \ + icu-libs \ && apk add --no-cache --repository=http://dl-cdn.alpinelinux.org/alpine/edge/community gosu \ && rm -rf /var/cache/apk/* diff --git a/src/Notifications/Dockerfile b/src/Notifications/Dockerfile index 75d39b4fb8..ca6c44fa8f 100644 --- a/src/Notifications/Dockerfile +++ b/src/Notifications/Dockerfile @@ -51,6 +51,7 @@ ENV DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=false EXPOSE 5000 RUN apk add curl \ + icu-libs \ && apk add --no-cache --repository=http://dl-cdn.alpinelinux.org/alpine/edge/community gosu \ && rm -rf /var/cache/apk/*