Files
CouchLog/Dockerfile
Henry 9eda45a4d7
Some checks failed
Build ARM64 Linux / build-arm64 (push) Has been cancelled
Build Linux x64 / build-linux-x64 (push) Has been cancelled
Build Windows x64 / build-windows-x64 (push) Has been cancelled
Build Docker Linux ARM64 / build-docker-linux-x64 (push) Failing after 11m21s
Merge branch 'main' of https://gitea.penry.de/Henry/CouchLog
# Conflicts:
#	Dockerfile
2025-12-11 20:47:35 +01:00

30 lines
858 B
Docker

# Stufe 1: Build-Umgebung (SDK)
# Wir nutzen das SDK Image, um den Code zu kompilieren
FROM mcr.microsoft.com/dotnet/sdk:10.0 AS build
WORKDIR /src
COPY ["../CouchLog/CouchLog.csproj", "."]
RUN dotnet restore "CouchLog.csproj"
# Kopiere den restlichen Source-Code
COPY ../CouchLog/ /src/
# Baue die Anwendung im Release-Modus
RUN dotnet build "CouchLog.csproj" -c Release -o /app/build
# Veröffentliche die Anwendung (Publish)
FROM build AS publish
RUN dotnet publish "CouchLog.csproj" -c Release -o /app/publish /p:UseAppHost=false
# Stufe 2: Runtime-Umgebung
# Das finale Image basiert auf dem schlanken ASP.NET Core Image
FROM mcr.microsoft.com/dotnet/aspnet:10.0 AS final
WORKDIR /app
EXPOSE 8080
EXPOSE 8081
# Kopiere die fertigen Dateien aus der Build-Stufe
COPY --from=publish /app/publish .
# Startbefehl
ENTRYPOINT ["dotnet", "CouchLog.dll"]