yavsc/Dockerfile
2026-02-02 00:39:24 +00:00

25 lines
765 B
Docker

# syntax=docker/dockerfile:1
# Learn about building .NET container images:
# https://github.com/dotnet/dotnet-docker/blob/main/samples/README.md
FROM --platform=$BUILDPLATFORM mcr.microsoft.com/dotnet/sdk:10.0-alpine AS build
ARG TARGETARCH=amd64
WORKDIR /source
# Copy project file and restore as distinct layers
COPY --link src src
COPY --link Directory.Packages.props .
RUN dotnet nuget add source https://isn.pschneider.fr/v3/index.json
RUN dotnet restore -a $TARGETARCH src/Yavsc/Yavsc.csproj
# Copy source code and publish app
RUN dotnet publish -a $TARGETARCH --no-restore -o /app src/Yavsc/Yavsc.csproj
# Runtime stage
FROM mcr.microsoft.com/dotnet/runtime:10.0-alpine
WORKDIR /app
COPY --link --from=build /app .
USER $APP_UID
ENTRYPOINT ["./Yavsc"]