From 3c3eef3e3964de8a04f219c60fb203c85eff2852 Mon Sep 17 00:00:00 2001 From: Patrick Dwyer Date: Fri, 6 Mar 2026 17:56:21 +1000 Subject: [PATCH] Fix dockerfile for API project and re-enable swagger UI Signed-off-by: Patrick Dwyer --- src/CoderPatros.Jss.Api/Dockerfile | 18 ++++++++++++++++++ src/CoderPatros.Jss.Api/Program.cs | 7 ++----- src/CoderPatros.Jss.Api/docker-run.sh | 10 ++++++++++ 3 files changed, 30 insertions(+), 5 deletions(-) create mode 100644 src/CoderPatros.Jss.Api/Dockerfile create mode 100755 src/CoderPatros.Jss.Api/docker-run.sh diff --git a/src/CoderPatros.Jss.Api/Dockerfile b/src/CoderPatros.Jss.Api/Dockerfile new file mode 100644 index 0000000..88b244b --- /dev/null +++ b/src/CoderPatros.Jss.Api/Dockerfile @@ -0,0 +1,18 @@ +FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS base +WORKDIR /app +EXPOSE 8080 + +FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build +WORKDIR /src +COPY ["Directory.Build.props", "./"] +COPY ["src/CoderPatros.Jss.Api/CoderPatros.Jss.Api.csproj", "src/CoderPatros.Jss.Api/"] +COPY ["src/CoderPatros.Jss/CoderPatros.Jss.csproj", "src/CoderPatros.Jss/"] +RUN dotnet restore "src/CoderPatros.Jss.Api/CoderPatros.Jss.Api.csproj" +COPY src/CoderPatros.Jss.Api/ src/CoderPatros.Jss.Api/ +COPY src/CoderPatros.Jss/ src/CoderPatros.Jss/ +RUN dotnet publish "src/CoderPatros.Jss.Api/CoderPatros.Jss.Api.csproj" -c Release -o /app/publish /p:UseAppHost=false + +FROM base AS final +WORKDIR /app +COPY --from=build /app/publish . +ENTRYPOINT ["dotnet", "CoderPatros.Jss.Api.dll"] diff --git a/src/CoderPatros.Jss.Api/Program.cs b/src/CoderPatros.Jss.Api/Program.cs index 33aadfb..39b3d95 100644 --- a/src/CoderPatros.Jss.Api/Program.cs +++ b/src/CoderPatros.Jss.Api/Program.cs @@ -9,11 +9,8 @@ var app = builder.Build(); -if (app.Environment.IsDevelopment()) -{ - app.UseSwagger(); - app.UseSwaggerUI(); -} +app.UseSwagger(); +app.UseSwaggerUI(); app.MapKeyEndpoints(); app.MapSignEndpoints(); diff --git a/src/CoderPatros.Jss.Api/docker-run.sh b/src/CoderPatros.Jss.Api/docker-run.sh new file mode 100755 index 0000000..763fa45 --- /dev/null +++ b/src/CoderPatros.Jss.Api/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-api" + +docker build -f "$SCRIPT_DIR/Dockerfile" -t "$IMAGE_NAME" "$REPO_ROOT" +docker run --rm -p 8080:8080 "$IMAGE_NAME"