From ebdbb96ee272dbaece04a679ffe536e29b0d03c2 Mon Sep 17 00:00:00 2001 From: Patrick Dwyer Date: Fri, 6 Mar 2026 18:05:44 +1000 Subject: [PATCH] Add dockerfile for web project Signed-off-by: Patrick Dwyer --- src/CoderPatros.Jss.Web/Dockerfile | 13 +++++++++++++ src/CoderPatros.Jss.Web/docker-run.sh | 10 ++++++++++ 2 files changed, 23 insertions(+) create mode 100644 src/CoderPatros.Jss.Web/Dockerfile create mode 100755 src/CoderPatros.Jss.Web/docker-run.sh diff --git a/src/CoderPatros.Jss.Web/Dockerfile b/src/CoderPatros.Jss.Web/Dockerfile new file mode 100644 index 0000000..0bdbe47 --- /dev/null +++ b/src/CoderPatros.Jss.Web/Dockerfile @@ -0,0 +1,13 @@ +FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build +WORKDIR /src +COPY ["Directory.Build.props", "./"] +COPY ["src/CoderPatros.Jss.Web/CoderPatros.Jss.Web.csproj", "src/CoderPatros.Jss.Web/"] +COPY ["src/CoderPatros.Jss/CoderPatros.Jss.csproj", "src/CoderPatros.Jss/"] +RUN dotnet restore "src/CoderPatros.Jss.Web/CoderPatros.Jss.Web.csproj" +COPY src/CoderPatros.Jss.Web/ src/CoderPatros.Jss.Web/ +COPY src/CoderPatros.Jss/ src/CoderPatros.Jss/ +RUN dotnet publish "src/CoderPatros.Jss.Web/CoderPatros.Jss.Web.csproj" -c Release -o /app/publish /p:UseAppHost=false + +FROM nginx:alpine AS final +COPY --from=build /app/publish/wwwroot /usr/share/nginx/html +EXPOSE 80 diff --git a/src/CoderPatros.Jss.Web/docker-run.sh b/src/CoderPatros.Jss.Web/docker-run.sh new file mode 100755 index 0000000..ec8112c --- /dev/null +++ b/src/CoderPatros.Jss.Web/docker-run.sh @@ -0,0 +1,10 @@ +#!/bin/bash +set -e + +SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" +REPO_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)" + +IMAGE_NAME="coderpatros-jss-web" + +docker build -f "$SCRIPT_DIR/Dockerfile" -t "$IMAGE_NAME" "$REPO_ROOT" +docker run --rm -p 8080:80 "$IMAGE_NAME"