Files
jsmr/JSMR.Api/Dockerfile
Brian Bicknell e1ee0d1b45
Some checks failed
ci / build-test (push) Has been skipped
ci / publish-image (push) Failing after 1m0s
Added dockerfile.
2025-11-02 22:34:06 -05:00

25 lines
869 B
Docker

# --- Build stage ---
FROM mcr.microsoft.com/dotnet/sdk:9.0 AS build
WORKDIR /src
# copy solution + restore-friendly files first for better layer caching
COPY JSMR.sln ./
COPY src/JSMR.Api/JSMR.Api.csproj src/JSMR.Api/
COPY src/JSMR.Application/JSMR.Application.csproj src/JSMR.Application/
COPY src/JSMR.Domain/JSMR.Domain.csproj src/JSMR.Domain/
COPY src/JSMR.Infrastructure/JSMR.Infrastructure.csproj src/JSMR.Infrastructure/
RUN dotnet restore src/JSMR.Api/JSMR.Api.csproj
# now copy the rest and publish
COPY src/ ./src/
RUN dotnet publish src/JSMR.Api/JSMR.Api.csproj -c Release -o /app/publish --no-restore
# --- Runtime stage ---
FROM mcr.microsoft.com/dotnet/aspnet:9.0 AS runtime
WORKDIR /app
COPY --from=build /app/publish ./
# optional: set ASPNETCORE_URLS to port 8080
ENV ASPNETCORE_URLS=http://+:8080
EXPOSE 8080
ENTRYPOINT ["dotnet", "JSMR.Api.dll"]