FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019 AS build WORKDIR /src # Copy solution and projects COPY RevokeMsgPatcher.sln . COPY RevokeMsgPatcher/ RevokeMsgPatcher/ COPY RevokeMsgPatcher.Assistant/ RevokeMsgPatcher.Assistant/ COPY RevokeMsgPatcher.MultiInstance/ RevokeMsgPatcher.MultiInstance/ COPY RevokeMsgPatcher.Launcher/ RevokeMsgPatcher.Launcher/ # Restore and build in Release configuration RUN nuget restore RevokeMsgPatcher.sln RUN msbuild RevokeMsgPatcher.sln /p:Configuration=Release FROM mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2019 AS runtime WORKDIR /app # Copy built artifacts from the build stage COPY --from=build /src/RevokeMsgPatcher/bin/Release/RevokeMsgPatcher.exe /app/RevokeMsgPatcher.exe COPY --from=build /src/RevokeMsgPatcher/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release/RevokeMsgPatcher.Assistant.exe /app/RevokeMsgPatcher.Assistant.exe COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release/RevokeMsgPatcher.MultiInstance.exe /app/RevokeMsgPatcher.MultiInstance.exe COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release/RevokeMsgPatcher.Launcher.exe /app/RevokeMsgPatcher.Launcher.exe COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release/*.dll /app/ CMD ["RevokeMsgPatcher.exe"]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8 AS build WORKDIR /src # Copy solution and projects COPY RevokeMsgPatcher.sln . COPY RevokeMsgPatcher/ RevokeMsgPatcher/ COPY RevokeMsgPatcher.Assistant/ RevokeMsgPatcher.Assistant/ COPY RevokeMsgPatcher.MultiInstance/ RevokeMsgPatcher.MultiInstance/ COPY RevokeMsgPatcher.Launcher/ RevokeMsgPatcher.Launcher/ # Restore and build in Release configuration RUN nuget restore RevokeMsgPatcher.sln RUN msbuild RevokeMsgPatcher.sln /p:Configuration=Release FROM mcr.microsoft.com/dotnet/framework/runtime:4.8 AS runtime WORKDIR /app # Copy built artifacts from the build stage COPY --from=build /src/RevokeMsgPatcher/bin/Release /app COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release /app/RevokeMsgPatcher.Assistant COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release /app/RevokeMsgPatcher.MultiInstance COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release /app/RevokeMsgPatcher.Launcher CMD ["RevokeMsgPatcher.exe"]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019 AS build WORKDIR /src # Copy solution and projects COPY RevokeMsgPatcher.sln . COPY RevokeMsgPatcher/ RevokeMsgPatcher/ COPY RevokeMsgPatcher.Assistant/ RevokeMsgPatcher.Assistant/ COPY RevokeMsgPatcher.MultiInstance/ RevokeMsgPatcher.MultiInstance/ COPY RevokeMsgPatcher.Launcher/ RevokeMsgPatcher.Launcher/ # Restore and build in Release configuration RUN nuget restore RevokeMsgPatcher.sln RUN msbuild RevokeMsgPatcher.sln /p:Configuration=Release FROM mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2019 AS runtime WORKDIR /app # Copy built artifacts from the build stage COPY --from=build /src/RevokeMsgPatcher/bin/Release/RevokeMsgPatcher.exe /app/RevokeMsgPatcher.exe COPY --from=build /src/RevokeMsgPatcher/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release/RevokeMsgPatcher.Assistant.exe /app/RevokeMsgPatcher.Assistant.exe COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release/RevokeMsgPatcher.MultiInstance.exe /app/RevokeMsgPatcher.MultiInstance.exe COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release/RevokeMsgPatcher.Launcher.exe /app/RevokeMsgPatcher.Launcher.exe COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release/*.dll /app/ CMD ["RevokeMsgPatcher.exe"]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019 AS build WORKDIR /src # Copy all source files COPY . . # Restore and build in Release configuration RUN nuget restore RevokeMsgPatcher.sln RUN msbuild RevokeMsgPatcher.sln /p:Configuration=Release FROM mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2019 AS runtime WORKDIR /app # Copy built artifacts from the build stage COPY --from=build /src/RevokeMsgPatcher/bin/Release/RevokeMsgPatcher.exe /app/RevokeMsgPatcher.exe COPY --from=build /src/RevokeMsgPatcher/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release/RevokeMsgPatcher.Assistant.exe /app/RevokeMsgPatcher.Assistant.exe COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release/RevokeMsgPatcher.MultiInstance.exe /app/RevokeMsgPatcher.MultiInstance.exe COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release/RevokeMsgPatcher.Launcher.exe /app/RevokeMsgPatcher.Launcher.exe COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release/*.dll /app/ CMD ["RevokeMsgPatcher.exe"]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019 AS build WORKDIR /src # Copy solution and projects COPY RevokeMsgPatcher.sln . COPY RevokeMsgPatcher/ RevokeMsgPatcher/ COPY RevokeMsgPatcher.Assistant/ RevokeMsgPatcher.Assistant/ COPY RevokeMsgPatcher.MultiInstance/ Revoke MsgPatcher.MultiInstance/ COPY RevokeMsgPatcher.Launcher/ RevokeMsgPatcher.Launcher/ # Restore and build in Release configuration RUN nuget restore RevokeMsgPatcher.sln RUN msbuild RevokeMsgPatcher.sln /p:Configuration=Release FROM mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2019 AS runtime WORKDIR /app # Copy built artifacts from the build stage COPY --from=build /src/RevokeMsgPatcher/bin/Release /app/ COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release /app/RevokeMsgPatcher.Assistant/ COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release /app/RevokeMsgPatcher.MultiInstance/ COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release /app/RevokeMsgPatcher.Launcher/ CMD ["RevokeMsgPatcher.exe"]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2022 AS build WORKDIR /src # Copy all source files COPY . . # Restore and build in Release configuration RUN nuget restore RevokeMsgPatcher.sln RUN msbuild RevokeMsgPatcher.sln /p:Configuration=Release FROM mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2022 AS runtime WORKDIR /app # Copy built artifacts from the build stage COPY --from=build /src/RevokeMsgPatcher/bin/Release /app COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release /app COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release /app COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release /app CMD ["RevokeMsgPatcher.exe"]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019 AS build WORKDIR /src # Copy solution and projects COPY RevokeMsgPatcher.sln . COPY RevokeMsgPatcher/ RevokeMsgPatcher/ COPY RevokeMsgPatcher.Assistant/ RevokeMsgPatcher.Assistant/ COPY RevokeMsgPatcher.MultiInstance/ RevokeMsgPatcher.MultiInstance/ COPY RevokeMsgPatcher.Launcher/ RevokeMsgPatcher.Launcher/ # Restore and build in Release configuration RUN nuget restore RevokeMsgPatcher.sln RUN msbuild RevokeMsgPatcher.sln /p:Configuration=Release FROM mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2019 AS runtime WORKDIR /app # Copy built artifacts from the build stage COPY --from=build /src/RevokeMsgPatcher/bin/Release/RevokeMsgPatcher.exe /app/RevokeMsgPatcher.exe COPY --from=build /src/RevokeMsgPatcher/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release/RevokeMsgPatcher.Assistant.exe /app/RevokeMsgPatcher.Assistant.exe COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release/RevokeMsgPatcher.MultiInstance.exe /app/RevokeMsgPatcher.MultiInstance.exe COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release/RevokeMsgPatcher.Launcher.exe /app/RevokeMsgPatcher.Launcher.exe COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release/*.dll /app/ CMD ["RevokeMsgPatcher.exe"]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019 AS build WORKDIR /src # Copy solution and projects COPY RevokeMsgPatcher.sln . COPY RevokeMsgPatcher/ RevokeMsgPatcher/ COPY RevokeMsgPatcher.Assistant/ RevokeMsgPatcher.Assistant/ COPY RevokeMsgPatcher.MultiInstance/ RevokeMsgPatcher.MultiInstance/ COPY RevokeMsgPatcher.Launcher/ RevokeMsgPatcher.Launcher/ # Restore and build in Release configuration RUN nuget restore RevokeMsgPatcher.sln RUN msbuild RevokeMsgPatcher.sln /p:Configuration=Release FROM mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2019 AS runtime WORKDIR /app # Copy built artifacts from the build stage COPY --from=build /src/RevokeMsgPatcher/bin/Release/RevokeMsgPatcher.exe /app/RevokeMsgPatcher.exe COPY --from=build /src/RevokeMsgPatcher/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release/RevokeMsgPatcher.Assistant.exe /app/RevokeMsgPatcher.Assistant.exe COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release/RevokeMsgPatcher.MultiInstance.exe /app/RevokeMsgPatcher.MultiInstance.exe COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release/RevokeMsgPatcher.Launcher.exe /app/RevokeMsgPatcher.Launcher.exe COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release/*.dll /app/ CMD ["RevokeMsgPatcher.exe"]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019 AS build WORKDIR /src # Copy all source files COPY . . # Restore and build in Release configuration RUN nuget restore RevokeMsgPatcher.sln RUN msbuild RevokeMsgPatcher.sln /p:Configuration=Release FROM mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2019 AS runtime WORKDIR /app # Copy built artifacts from the build stage COPY --from=build /src/RevokeMsgPatcher/bin/Release/RevokeMsgPatcher.exe /app/RevokeMsgPatcher.exe COPY --from=build /src/RevokeMsgPatcher/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release/RevokeMsgPatcher.Assistant.exe /app/RevokeMsgPatcher.Assistant.exe COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release/RevokeMsgPatcher.MultiInstance.exe /app/RevokeMsgPatcher.MultiInstance.exe COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release/RevokeMsgPatcher.Launcher.exe /app/RevokeMsgPatcher.Launcher.exe COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release/*.dll /app/ CMD ["RevokeMsgPatcher.exe"]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019 AS build WORKDIR /src # Copy all source files COPY . . # Restore and build in Release configuration RUN nuget restore RevokeMsgPatcher.sln RUN msbuild RevokeMsgPatcher.sln /p:Configuration=Release FROM mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2019 AS runtime WORKDIR /app # Copy built artifacts from the build stage COPY --from=build /src/RevokeMsgPatcher/bin/Release/RevokeMsgPatcher.exe /app/RevokeMsgPatcher.exe COPY --from=build /src/RevokeMsgPatcher/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release/RevokeMsgPatcher.Assistant.exe /app/RevokeMsgPatcher.Assistant.exe COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release/RevokeMsgPatcher.MultiInstance.exe /app/RevokeMsgPatcher.MultiInstance.exe COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release/RevokeMsgPatcher.Launcher.exe /app/RevokeMsgPatcher.Launcher.exe COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release/*.dll /app/ CMD ["RevokeMsgPatcher.exe"]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8 AS build WORKDIR /src # Copy all source files COPY . . # Restore and build in Release configuration RUN nuget restore RevokeMsgPatcher.sln RUN msbuild RevokeMsgPatcher.sln /p:Configuration=Release FROM mcr.microsoft.com/dotnet/framework/runtime:4.8 AS runtime WORKDIR /app # Copy built artifacts from the build stage COPY --from=build /src/RevokeMsgPatcher/bin/Release /app COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release /app COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release /app COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release /app CMD ["RevokeMsgPatcher.exe"]
Concerns: No Dockerfile found at repo root
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019 AS build WORKDIR /src COPY . . RUN nuget restore RevokeMsgPatcher.sln RUN msbuild RevokeMsgPatcher.sln /p:Configuration=Release FROM mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2019 WORKDIR /app COPY --from=build /src/RevokeMsgPatcher/bin/Release /app COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release /app COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release /app COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release /app CMD ["RevokeMsgPatcher.exe"]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019 AS build WORKDIR /src # Copy solution and projects COPY RevokeMsgPatcher.sln . COPY RevokeMsgPatcher/ RevokeMsgPatcher/ COPY RevokeMsgPatcher.Assistant/ RevokeMsgPatcher.Assistant/ COPY RevokeMsgPatcher.MultiInstance/ RevokeMsgPatcher.MultiInstance/ COPY RevokeMsgPatcher.Launcher/ RevokeMsgPatcher.Launcher/ # Restore and build in Release configuration RUN nuget restore RevokeMsgPatcher.sln RUN msbuild RevokeMsgPatcher.sln /p:Configuration=Release FROM mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2019 AS runtime WORKDIR /app # Copy built artifacts from the build stage COPY --from=build /src/RevokeMsgPatcher/bin/Release /app COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release /app COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release /app COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release /app CMD ["RevokeMsgPatcher.exe"]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8 AS build WORKDIR /src # Copy all source files COPY . . # Restore and build in Release configuration RUN nuget restore RevokeMsgPatcher.sln RUN msbuild RevokeMsgPatcher.sln /p:Configuration=Release FROM mcr.microsoft.com/dotnet/framework/runtime:4.8 AS runtime WORKDIR /app # Copy built artifacts from the build stage COPY --from=build /src/RevokeMsgPatcher/bin/Release /app COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release /app COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release /app COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release /app CMD ["RevokeMsgPatcher.exe"]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019 AS build WORKDIR /src # Copy all source files COPY . . # Restore and build in Release configuration RUN nuget restore RevokeMsgPatcher.sln RUN msbuild RevokeMsgPatcher.sln /p:Configuration=Release FROM mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2019 AS runtime WORKDIR /app # Copy built artifacts from the build stage COPY --from=build /src/RevokeMsgPatcher/bin/Release/RevokeMsgPatcher.exe /app/RevokeMsgPatcher.exe COPY --from=build /src/RevokeMsgPatcher/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release/RevokeMsgPatcher.Assistant.exe /app/RevokeMsgPatcher.Assistant.exe COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release/RevokeMsgPatcher.MultiInstance.exe /app/RevokeMsgPatcher.MultiInstance.exe COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release/RevokeMsgPatcher.Launcher.exe /app/RevokeMsgPatcher.Launcher.exe COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release/*.dll /app/ CMD ["RevokeMsgPatcher.exe"]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019 AS build WORKDIR /src # Copy all source files COPY . . # Restore and build in Release configuration RUN nuget restore RevokeMsgPatcher.sln RUN msbuild RevokeMsgPatcher.sln /p:Configuration=Release FROM mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2019 AS runtime WORKDIR /app # Copy built artifacts from the build stage COPY --from=build /src/RevokeMsgPatcher/bin/Release/RevokeMsgPatcher.exe /app/RevokeMsgPatcher.exe COPY --from=build /src/RevokeMsgPatcher/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release/RevokeMsgPatcher.Assistant.exe /app/RevokeMsgPatcher.Assistant.exe COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release/RevokeMsgPatcher.MultiInstance.exe /app/RevokeMsgPatcher.MultiInstance.exe COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release/RevokeMsgPatcher.Launcher.exe /app/RevokeMsgPatcher.Launcher.exe COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release/*.dll /app/ CMD ["RevokeMsgPatcher.exe"]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8 AS build WORKDIR /src # Copy all source files COPY . . # Restore and build in Release configuration RUN nuget restore RevokeMsgPatcher.sln RUN msbuild RevokeMsgPatcher.sln /p:Configuration=Release FROM mcr.microsoft.com/dotnet/framework/runtime:4.8 AS runtime WORKDIR /app # Copy built artifacts from the build stage COPY --from=build /src/RevokeMsgPatcher/bin/Release/RevokeMsgPatcher.exe /app/RevokeMsgPatcher.exe COPY --from=build /src/RevokeMsgPatcher/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release/RevokeMsgPatcher.Assistant.exe /app/RevokeMsgPatcher.Assistant.exe COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release/RevokeMsgPatcher.MultiInstance.exe /app/RevokeMsgPatcher.MultiInstance.exe COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release/RevokeMsgPatcher.Launcher.exe /app/RevokeMsgPatcher.Launcher.exe COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release/*.dll /app/ CMD ["RevokeMsgPatcher.exe"]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019 AS build WORKDIR /src # Copy solution and projects COPY RevokeMsgPatcher.sln . COPY RevokeMsgPatcher/ RevokeMsgPatcher/ COPY RevokeMsgPatcher.Assistant/ RevokeMsgPatcher.Assistant/ COPY RevokeMsgPatcher.MultiInstance/ RevokeMsgPatcher.MultiInstance/ COPY RevokeMsgPatcher.Launcher/ RevokeMsgPatcher.Launcher/ # Restore and build in Release configuration RUN nuget restore RevokeMsgPatcher.sln RUN msbuild RevokeMsgPatcher.sln /p:Configuration=Release FROM mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2019 AS runtime WORKDIR /app # Copy built artifacts from the build stage COPY --from=build /src/RevokeMsgPatcher/bin/Release /app COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release /app COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release /app COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release /app CMD ["RevokeMsgPatcher.exe"]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019 AS build WORKDIR /src # Copy solution and projects COPY RevokeMsgPatcher.sln . COPY RevokeMsgPatcher/ RevokeMsgPatcher/ COPY RevokeMsgPatcher.Assistant/ RevokeMsgPatcher.Assistant/ COPY RevokeMsgPatcher.MultiInstance/ RevokeMsgPatcher.MultiInstance/ COPY RevokeMsgPatcher.Launcher/ RevokeMsgPatcher.Launcher/ # Restore and build in Release configuration RUN nuget restore RevokeMsgPatcher.sln RUN msbuild RevokeMsgPatcher.sln /p:Configuration=Release FROM mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2019 AS runtime WORKDIR /app # Copy built artifacts from the build stage COPY --from=build /src/RevokeMsgPatcher/bin/Release/RevokeMsgPatcher.exe /app/RevokeMsgPatcher.exe COPY --from=build /src/RevokeMsgPatcher/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release/RevokeMsgPatcher.Assistant.exe /app/RevokeMsgPatcher.Assistant.exe COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release/RevokeMsgPatcher.MultiInstance.exe /app/RevokeMsgPatcher.MultiInstance.exe COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release/RevokeMsgPatcher.Launcher.exe /app/RevokeMsgPatcher.Launcher.exe COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release/*.dll /app/ CMD ["RevokeMsgPatcher.exe"]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019 AS build WORKDIR /src # Copy solution and projects COPY RevokeMsgPatcher.sln . COPY RevokeMsgPatcher/ RevokeMsgPatcher/ COPY RevokeMsgPatcher.Assistant/ RevokeMsgPatcher.Assistant/ COPY RevokeMsgPatcher.MultiInstance/ RevokeMsgPatcher.MultiInstance/ COPY RevokeMsgPatcher.Launcher/ RevokeMsgPatcher.Launcher/ # Restore and build in Release configuration RUN nuget restore RevokeMsgPatcher.sln RUN msbuild RevokeMsgPatcher.sln /p:Configuration=Release FROM mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2019 AS runtime WORKDIR /app # Copy built artifacts from the build stage COPY --from=build /src/RevokeMsgPatcher/bin/Release/RevokeMsgPatcher.exe /app/RevokeMsgPatcher.exe COPY --from=build /src/RevokeMsgPatcher/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release/RevokeMsgPatcher.Assistant.exe /app/RevokeMsgPatcher.Assistant.exe COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release/RevokeMsgPatcher.MultiInstance.exe /app/RevokeMsgPatcher.MultiInstance.exe COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release/RevokeMsgPatcher.Launcher.exe /app/RevokeMsgPatcher.Launcher.exe COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release/*.dll /app/ CMD ["RevokeMsgPatcher.exe"]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019 AS build WORKDIR /src COPY . . RUN nuget restore RevokeMsgPatcher.sln RUN msbuild RevokeMsgPatcher.sln /p:Configuration=Release FROM mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2019 AS runtime WORKDIR /app COPY --from=build /src/RevokeMsgPatcher/bin/Release /app COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release /app COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release /app COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release /app CMD ["RevokeMsgPatcher.exe"]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8 AS build WORKDIR /src # Copy all source files COPY . . # Restore and build in Release configuration RUN nuget restore RevokeMsgPatcher.sln RUN msbuild RevokeMsgPatcher.sln /p:Configuration=Release FROM mcr.microsoft.com/dotnet/framework/runtime:4.8 AS runtime WORKDIR /app # Copy built artifacts from the build stage COPY --from=build /src/RevokeMsgPatcher/bin/Release/RevokeMsgPatcher.exe /app/RevokeMsgPatcher.exe COPY --from=build /src/RevokeMsgPatcher/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release/RevokeMsgPatcher.Assistant.exe /app/RevokeMsgPatcher.Assistant.exe COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release/RevokeMsgPatcher.MultiInstance.exe /app/RevokeMsgPatcher.MultiInstance.exe COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release/RevokeMsgPatcher.Launcher.exe /app/RevokeMsgPatcher.Launcher.exe COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release/*.dll /app/ CMD ["RevokeMsgPatcher.exe"]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019 AS build WORKDIR /src COPY RevokeMsgPatcher.sln ./ COPY RevokeMsgPatcher/ RevokeMsgPatcher/ COPY RevokeMsgPatcher.Assistant/ RevokeMsgPatcher.Assistant/ COPY RevokeMsgPatcher.MultiInstance/ RevokeMsgPatcher.MultiInstance/ COPY RevokeMsgPatcher.Launcher/ RevokeMsgPatcher.Launcher/ RUN nuget restore RevokeMsgPatcher.sln RUN msbuild RevokeMsgPatcher.sln /p:Configuration=Release FROM mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2019 AS runtime WORKDIR /app COPY --from=build /src/RevokeMsgPatcher/bin/Release/RevokeMsgPatcher.exe /app/RevokeMsgPatcher.exe COPY --from=build /src/RevokeMsgPatcher/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release/RevokeMsgPatcher.Assistant.exe /app/RevokeMsgPatcher.Assistant.exe COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release/RevokeMsgPatcher.MultiInstance.exe /app/RevokeMsgPatcher.MultiInstance.exe COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release/RevokeMsgPatcher.Launcher.exe /app/RevokeMsgPatcher.Launcher.exe COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release/*.dll /app/ CMD ["RevokeMsgPatcher.exe"]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019 AS build WORKDIR /src # Copy all source files COPY . . # Restore and build in Release configuration RUN nuget restore RevokeMsgPatcher.sln RUN msbuild RevokeMsgPatcher.sln /p:Configuration=Release FROM mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2019 AS runtime WORKDIR /app # Copy built artifacts from the build stage COPY --from=build /src/RevokeMsgPatcher/bin/Release/RevokeMsgPatcher.exe /app/RevokeMsgPatcher.exe COPY --from=build /src/RevokeMsgPatcher/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release/RevokeMsgPatcher.Assistant.exe /app/RevokeMsgPatcher.Assistant.exe COPY --from=build /src/RevokeMsgPatcher.Assistant/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release/RevokeMsgPatcher.MultiInstance.exe /app/RevokeMsgPatcher.MultiInstance.exe COPY --from=build /src/RevokeMsgPatcher.MultiInstance/bin/Release/*.dll /app/ COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release/RevokeMsgPatcher.Launcher.exe /app/RevokeMsgPatcher.Launcher.exe COPY --from=build /src/RevokeMsgPatcher.Launcher/bin/Release/*.dll /app/ CMD ["RevokeMsgPatcher.exe"]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8 WORKDIR /src # Copy the source code into the container COPY . . # Restore NuGet packages (needed for packages.config references) RUN nuget restore RevokeMsgPatcher.sln # Build configuration (default Release). Can be overridden at build time with --build-arg BUILD_CONFIGURATION=Debug ARG BUILD_CONFIGURATION=Release RUN msbuild /m /p:Configuration=%BUILD_CONFIGURATION% RevokeMsgPatcher.sln # Collect build artifacts to a container-visible location RUN mkdir C:\\output RUN xcopy /E /I /Y "RevokeMsgPatcher\\bin\\%BUILD_CONFIGURATION%" "C:\\output\\RevokeMsgPatcher" # Expose the artifacts directory as a volume for easy retrieval VOLUME ["C:\\output"] # Default command: print location of artifacts CMD ["powershell","-NoProfile","-Command","Write-Host 'Build complete. Artifacts are in C:\\output\\RevokeMsgPatcher'"]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8
WORKDIR /src
# Copy the source code into the container
COPY . .
# Restore NuGet packages (needed for packages.config references)
RUN powershell -NoProfile -Command "& { nuget restore RevokeMsgPatcher.sln }"
# Build configuration (default Release). Can be overridden at build time with --build-arg BUILD_CONFIGURATION=Debug
ARG BUILD_CONFIGURATION=Release
RUN msbuild /m /p:Configuration=%BUILD_CONFIGURATION% RevokeMsgPatcher.sln
# Collect build artifacts to a container-visible location
RUN mkdir C:\\output
RUN xcopy /E /I /Y "RevokeMsgPatcher\\bin\\%BUILD_CONFIGURATION%" "C:\\output\\RevokeMsgPatcher"
# Expose the artifacts directory as a volume for easy retrieval
VOLUME ["C:\\output"]
# Default command: print location of artifacts
CMD ["powershell","-NoProfile","-Command","Write-Host 'Build complete. Artifacts are in C:\\output\\RevokeMsgPatcher'" ]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019 WORKDIR C:\src # Copy the source code into the container COPY . . # Restore NuGet packages (needed for packages.config references) RUN powershell -NoProfile -Command "nuget restore RevokeMsgPatcher.sln" # Build configuration (default Release). Can be overridden at build time with --build-arg BUILD_CONFIGURATION=Debug ARG BUILD_CONFIGURATION=Release RUN msbuild /m /p:Configuration=%BUILD_CONFIGURATION% RevokeMsgPatcher.sln # Collect build artifacts to a container-visible location RUN powershell -NoProfile -Command "New-Item -ItemType Directory -Force -Path C:\\output" RUN xcopy /E /I /Y "RevokeMsgPatcher\\bin\\%BUILD_CONFIGURATION%" "C:\\output\\RevokeMsgPatcher" # Expose the artifacts directory as a volume for easy retrieval VOLUME ["C:\\output"] # Default command: print location of artifacts CMD ["powershell","-NoProfile","-Command","Write-Host 'Build complete. Artifacts are in C:\\output\\RevokeMsgPatcher'" ]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019
WORKDIR C:\\src
# Copy the source code into the container
COPY . .
# Restore NuGet packages (needed for packages.config references)
RUN nuget restore RevokeMsgPatcher.sln
# Build configuration (default Release). Can be overridden at build time with --build-arg BUILD_CONFIGURATION=Debug
ARG BUILD_CONFIGURATION=Release
RUN msbuild /m /p:Configuration=${BUILD_CONFIGURATION} RevokeMsgPatcher.sln
# Collect build artifacts to a container-visible location
RUN New-Item -ItemType Directory -Force -Path C:\\output
RUN Copy-Item -Path "RevokeMsgPatcher\\bin\\${BUILD_CONFIGURATION}\\*" -Destination "C:\\output\\RevokeMsgPatcher" -Recurse
# Expose the artifacts directory as a volume for easy retrieval
VOLUME ["C:\\output"]
# Default command: print location of artifacts
CMD ["powershell","-NoProfile","-Command","Write-Host 'Build complete. Artifacts are in C:\\output\\RevokeMsgPatcher'"]
FROM mcr.microsoft.com/dotnet/sdk:8.0
WORKDIR /src
# Copy source
COPY . .
# Attempt to restore and build (for a Linux/.NET SDK environment). This project targets .NET Framework and may not build this way on Linux.
RUN dotnet restore RevokeMsgPatcher.sln || echo "dotnet restore may fail for non-SDK projects; continuing for build attempt"
ARG BUILD_CONFIGURATION=Release
RUN dotnet build RevokeMsgPatcher.sln -c ${BUILD_CONFIGURATION} || echo "Build may fail due to project type; continuing to produce artifacts if possible"
# Collect build artifacts if any
RUN mkdir -p /output/RevokeMsgPatcher
RUN find RevokeMsgPatcher -maxdepth 2 -type f -name '*.dll' -o -name '*.exe' -o -name '*.pdb' -print0 | xargs -0 -I{} cp -v {} /output/RevokeMsgPatcher/ 2>/dev/null || true
VOLUME ["/output"]
CMD ["bash","-lc","echo Build finished. Artifacts (if any) are in /output; ls -la /output" ]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019
WORKDIR C:\\src
# Copy the source code into the container
COPY . .
# Restore NuGet packages (needed for packages.config references)
RUN powershell -NoProfile -Command "& { $ErrorActionPreference = 'Stop'; $nugetUri = 'https://dist.nuget.org/win-x86-commandline/latest/nuget.exe'; Invoke-WebRequest -Uri $nugetUri -OutFile nuget.exe; .\nuget.exe restore RevokeMsgPatcher.sln }"
# Build configuration (default Release). Can be overridden at build time with --build-arg BUILD_CONFIGURATION=Debug
ARG BUILD_CONFIGURATION=Release
RUN msbuild /m /p:Configuration=%BUILD_CONFIGURATION% RevokeMsgPatcher.sln
# Collect build artifacts to a container-visible location
RUN powershell -NoProfile -Command "New-Item -ItemType Directory -Force -Path C:\\output"
RUN xcopy /E /I /Y "RevokeMsgPatcher\\bin\\%BUILD_CONFIGURATION%" "C:\\output\\RevokeMsgPatcher"
# Expose the artifacts directory as a volume for easy retrieval
VOLUME ["C:\\output"]
# Default command: print location of artifacts
CMD ["powershell","-NoProfile","-Command","Write-Host 'Build complete. Artifacts are in C:\\output\\RevokeMsgPatcher'" ]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8 WORKDIR C:\\src # Copy the source code into the container COPY . . # Restore NuGet packages (needed for packages.config references) RUN nuget restore RevokeMsgPatcher.sln # Build configuration (default Release). Can be overridden at build time with --build-arg BUILD_CONFIGURATION=Debug ARG BUILD_CONFIGURATION=Release RUN msbuild /m /p:Configuration=%BUILD_CONFIGURATION% RevokeMsgPatcher.sln # Collect build artifacts to a container-visible location RUN New-Item -ItemType Directory -Force -Path C:\\output RUN Copy-Item -Path "RevokeMsgPatcher\\bin\\%BUILD_CONFIGURATION%\\*" -Destination "C:\\output\\RevokeMsgPatcher" -Recurse # Expose the artifacts directory as a volume for easy retrieval VOLUME ["C:\\output"] # Default command: print location of artifacts CMD ["powershell","-NoProfile","-Command","Write-Host 'Build complete. Artifacts are in C:\\output\\RevokeMsgPatcher'" ]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019 WORKDIR C:\src # Copy source COPY . . # Download NuGet CLI and restore packages RUN powershell -NoProfile -Command "Invoke-WebRequest -Uri https://dist.nuget.org/win-x86-commandline/latest/nuget.exe -OutFile nuget.exe" \ ; .\nuget.exe restore RevokeMsgPatcher.sln ARG BUILD_CONFIGURATION=Release RUN msbuild /m /p:Configuration=%BUILD_CONFIGURATION% RevokeMsgPatcher.sln # Export artifacts RUN if not exist C:\output mkdir C:\output RUN xcopy /E /I /Y "RevokeMsgPatcher\\bin\\%BUILD_CONFIGURATION%" "C:\\output\\RevokeMsgPatcher" VOLUME ["C:\output"] CMD ["powershell","-NoProfile","-Command","Write-Host 'Build complete. Artifacts are in C:\\output\\RevokeMsgPatcher'" ]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019 # Build in a Windows container with .NET Framework 4.8 SDK WORKDIR C:\\src # Copy source code into image COPY . . # Download NuGet CLI and restore packages RUN powershell -NoProfile -Command "Invoke-WebRequest -Uri https://dist.nuget.org/win-x86-commandline/latest/nuget.exe -OutFile C:\\nuget.exe" \ && C:\\nuget.exe restore RevokeMsgPatcher.sln # Build configuration (default Release). Can be overridden at build time ARG BUILD_CONFIGURATION=Release RUN msbuild /m /p:Configuration=%BUILD_CONFIGURATION% RevokeMsgPatcher.sln # Export artifacts to a known location inside the container RUN if not exist C:\\output mkdir C:\\output RUN xcopy /E /I /Y "RevokeMsgPatcher\\bin\\%BUILD_CONFIGURATION%" "C:\\output\\RevokeMsgPatcher" # Expose artifacts for retrieval VOLUME ["C:\\output"] # Default command: show where artifacts are CMD ["powershell","-NoProfile","-Command","Write-Host 'Build complete. Artifacts are in C:\\output\\RevokeMsgPatcher'"]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019 WORKDIR C:\src COPY . . # Restore NuGet packages (for packages.config) RUN powershell -NoProfile -Command "Invoke-WebRequest -Uri https://dist.nuget.org/win-x86-commandline/latest/nuget.exe -OutFile C:\\nuget.exe; & C:\\nuget.exe restore RevokeMsgPatcher.sln" # Build configuration (default Release) ARG BUILD_CONFIGURATION=Release RUN msbuild /m /p:Configuration=%BUILD_CONFIGURATION% RevokeMsgPatcher.sln # Export artifacts to a container-visible location RUN if not exist C:\\output mkdir C:\\output RUN xcopy /E /I /Y "RevokeMsgPatcher\\bin\\%BUILD_CONFIGURATION%" "C:\\output\\RevokeMsgPatcher" VOLUME ["C:\\output"] CMD ["powershell","-NoProfile","-Command","Write-Host 'Build complete. Artifacts are in C:\\output\\RevokeMsgPatcher'"]
FROM mcr.microsoft.com/dotnet/sdk:8.0
WORKDIR /src
# Copy the source code into the container
COPY . .
# Attempt to restore and build (Linux/.NET SDK environment)
RUN dotnet restore RevokeMsgPatcher.sln || true
ARG BUILD_CONFIGURATION=Release
RUN dotnet build RevokeMsgPatcher.sln -c ${BUILD_CONFIGURATION} || true
# Collect build artifacts if any
RUN mkdir -p /output/RevokeMsgPatcher
RUN bash -lc 'if [ -d RevokeMsgPatcher/bin/${BUILD_CONFIGURATION} ]; then cp -r RevokeMsgPatcher/bin/${BUILD_CONFIGURATION}/* /output/RevokeMsgPatcher/ 2>/dev/null || true; fi'
VOLUME ["/output"]
CMD ["bash","-lc","echo Build attempt finished. Artifacts (if any) are in /output; ls -la /output"]
# Multi-stage Dockerfile for building RevokeMsgPatcher on Linux (best effort)
# Stage 1: attempt to build using the .NET SDK (Linux). The project targets .NET Framework, which normally requires Windows containers.
FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build
WORKDIR /src
# Copy source
COPY . .
# Attempt to restore and build (likely to fail due to .NET Framework project)
RUN dotnet restore RevokeMsgPatcher.sln || true
ARG BUILD_CONFIGURATION=Release
RUN dotnet build RevokeMsgPatcher.sln -c ${BUILD_CONFIGURATION} || true
# Export any produced artifacts to /output
RUN mkdir -p /output/RevokeMsgPatcher
RUN if [ -d RevokeMsgPatcher/bin/${BUILD_CONFIGURATION} ]; then cp -r RevokeMsgPatcher/bin/${BUILD_CONFIGURATION}/* /output/RevokeMsgPatcher/ 2>/dev/null || true; fi
# Stage 2: runtime image that simply exposes the artifacts directory
FROM alpine:3.19
RUN apk add --no-cache bash
VOLUME ["/output"]
WORKDIR /output
CMD ["bash","-lc","echo Build attempted. Artifacts (if any) will be here: /output; ls -la /output"]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8 # Use Windows containers with .NET Framework 4.8 SDK WORKDIR C:\src # Copy source code COPY . . # Download NuGet CLI and restore packages RUN powershell -NoProfile -Command "Invoke-WebRequest -Uri https://dist.nuget.org/win-x86-commandline/latest/nuget.exe -OutFile C:\\nuget.exe; & C:\\nuget.exe restore RevokeMsgPatcher.sln" # Build configuration (default Release) ARG BUILD_CONFIGURATION=Release RUN msbuild /m /p:Configuration=%BUILD_CONFIGURATION% RevokeMsgPatcher.sln # Export artifacts to a known location inside the container RUN if not exist C:\\output mkdir C:\\output RUN xcopy /E /I /Y "RevokeMsgPatcher\\bin\\%BUILD_CONFIGURATION%" "C:\\output\\RevokeMsgPatcher" VOLUME ["C:\\output"] CMD ["powershell","-NoProfile","-Command","Write-Host 'Build complete. Artifacts are in C:\\output\\RevokeMsgPatcher'"]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019 WORKDIR C:\src # Copy source COPY . . # Install NuGet CLI and restore packages RUN powershell -NoProfile -Command "Invoke-WebRequest -Uri https://dist.nuget.org/win-x86-commandline/latest/nuget.exe -OutFile C:\\nuget.exe; & C:\\nuget.exe restore RevokeMsgPatcher.sln" ARG BUILD_CONFIGURATION=Release RUN msbuild /m /p:Configuration=%BUILD_CONFIGURATION% RevokeMsgPatcher.sln # Export artifacts to a known location inside the container RUN if not exist C:\\output mkdir C:\\output RUN xcopy /E /I /Y "RevokeMsgPatcher\\bin\\%BUILD_CONFIGURATION%" "C:\\output\\RevokeMsgPatcher" VOLUME ["C:\\output"] CMD ["powershell","-NoProfile","-Command","Write-Host 'Build complete. Artifacts are in C:\\output\\RevokeMsgPatcher'"]
Concerns: No Dockerfile found at repo root
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8 WORKDIR C:\src COPY . . RUN powershell -NoProfile -Command "Invoke-WebRequest -Uri https://dist.nuget.org/win-x86-commandline/latest/nuget.exe -OutFile C:\\nuget.exe; & C:\\nuget.exe restore RevokeMsgPatcher.sln" ARG BUILD_CONFIGURATION=Release RUN msbuild /m /p:Configuration=%BUILD_CONFIGURATION% RevokeMsgPatcher.sln RUN if not exist C:\\output mkdir C:\\output RUN xcopy /E /I /Y "RevokeMsgPatcher\\bin\\%BUILD_CONFIGURATION%" "C:\\output\\RevokeMsgPatcher" VOLUME ["C:\\output"] CMD ["powershell","-NoProfile","-Command","Write-Host 'Build complete. Artifacts are in C:\\output\\RevokeMsgPatcher'"]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019 SHELL ["powershell", "-NoProfile", "-Command"] WORKDIR C:\src # Copy the source code into the container COPY . . # Download NuGet CLI and restore packages RUN Invoke-WebRequest -Uri https://dist.nuget.org/win-x86-commandline/latest/nuget.exe -OutFile C:\\nuget.exe; & C:\\nuget.exe restore RevokeMsgPatcher.sln # Build configuration (default Release). Can be overridden at build time with --build-arg BUILD_CONFIGURATION=Debug ARG BUILD_CONFIGURATION=Release RUN msbuild /m /p:Configuration=%BUILD_CONFIGURATION% RevokeMsgPatcher.sln # Export artifacts to a known location inside the container RUN if not exist C:\\output mkdir C:\\output RUN powershell -NoProfile -Command "New-Item -ItemType Directory -Force -Path C:\\output; Copy-Item -Path 'RevokeMsgPatcher\bin\\%BUILD_CONFIGURATION%\\*' -Destination 'C:\\output\\RevokeMsgPatcher' -Recurse" VOLUME ["C:\\output"] CMD ["powershell", "-NoProfile", "-Command", "Write-Host 'Build complete. Artifacts are in C:\\output\\RevokeMsgPatcher'"]
FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build
WORKDIR /src
COPY . ./
ARG BUILD_CONFIGURATION=Release
RUN dotnet restore RevokeMsgPatcher.sln || true
RUN dotnet build RevokeMsgPatcher.sln -c ${BUILD_CONFIGURATION} || true
RUN mkdir -p /output/RevokeMsgPatcher
RUN cp -r RevokeMsgPatcher/bin/${BUILD_CONFIGURATION}/* /output/RevokeMsgPatcher/ 2>/dev/null || true
VOLUME ["/output"]
CMD ["bash","-lc","echo Build attempted. Artifacts (if any) are in /output; ls -la /output"]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019
SHELL ["powershell", "-NoProfile", "-Command"]
WORKDIR C:\\src
# Copy the source code into the container
COPY . .
# Download NuGet CLI and restore packages
RUN Invoke-WebRequest -Uri https://dist.nuget.org/win-x86-commandline/latest/nuget.exe -OutFile C:\\nuget.exe; & C:\\nuget.exe restore RevokeMsgPatcher.sln
# Build configuration (default Release). Can be overridden at build time
ARG BUILD_CONFIGURATION=Release
RUN msbuild /m /p:Configuration=%BUILD_CONFIGURATION% RevokeMsgPatcher.sln
# Export artifacts to a known location inside the container
RUN if (-Not (Test-Path C:\\output)) { New-Item -ItemType Directory -Force -Path C:\\output }
RUN Copy-Item -Path 'RevokeMsgPatcher\\bin\\%BUILD_CONFIGURATION%\\*' -Destination 'C:\\output\\RevokeMsgPatcher' -Recurse
VOLUME ["C:\\output"]
CMD ["powershell", "-NoProfile", "-Command", "Write-Host 'Build complete. Artifacts are in C:\\output\\RevokeMsgPatcher'"]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019
WORKDIR C:\src
COPY . .
# Restore NuGet packages and build from source
RUN powershell -NoProfile -Command "Invoke-WebRequest -Uri https://dist.nuget.org/win-x86-commandline/latest/nuget.exe -OutFile C:\\nuget.exe; & C:\\nuget.exe restore RevokeMsgPatcher.sln"
ARG BUILD_CONFIGURATION=Release
RUN msbuild /m /p:Configuration=%BUILD_CONFIGURATION% RevokeMsgPatcher.sln
# Export artifacts to a known location inside the container
RUN if (-Not (Test-Path "C:\\output")) { New-Item -ItemType Directory -Path C:\\output -Force }
RUN xcopy /E /I /Y "RevokeMsgPatcher\\bin\\%BUILD_CONFIGURATION%" "C:\\output\\RevokeMsgPatcher"
VOLUME ["C:\\output"]
CMD ["powershell","-NoProfile","-Command","Write-Host 'Build complete. Artifacts are in C:\\output\\RevokeMsgPatcher'"]
Concerns: No Dockerfile found at repo root
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019
SHELL ["powershell", "-NoProfile"]
WORKDIR C:\\src
# Copy the source code into the container
COPY . .
# Download NuGet CLI and restore packages
RUN Invoke-WebRequest -Uri https://dist.nuget.org/win-x86-commandline/latest/nuget.exe -OutFile C:\\nuget.exe; & C:\\nuget.exe restore RevokeMsgPatcher.sln
# Build configuration (Release by default)
RUN msbuild /m /p:Configuration=Release RevokeMsgPatcher.sln
# Export artifacts to a known location inside the container
RUN if (-Not (Test-Path C:\\output)) { New-Item -ItemType Directory -Path C:\\output -Force }
RUN Copy-Item -Path 'RevokeMsgPatcher\\bin\\Release\\*' -Destination 'C:\\output\\RevokeMsgPatcher' -Recurse
VOLUME ["C:\\output"]
CMD ["powershell", "-NoProfile", "-Command", "Write-Host 'Build complete. Artifacts are in C:\\output\\RevokeMsgPatcher'"]
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019
SHELL ["powershell", "-NoProfile"]
WORKDIR C:\\src
COPY . .
# Download NuGet CLI and restore packages
RUN Invoke-WebRequest -Uri https://dist.nuget.org/win-x86-commandline/latest/nuget.exe -OutFile C:\\nuget.exe; & C:\\nuget.exe restore RevokeMsgPatcher.sln
# Build configuration (Release by default)
ARG BUILD_CONFIGURATION=Release
RUN msbuild /m /p:Configuration=%BUILD_CONFIGURATION% RevokeMsgPatcher.sln
# Export artifacts to a known location inside the container
RUN if (-Not (Test-Path C:\\output)) { New-Item -ItemType Directory -Path C:\\output -Force }
RUN Copy-Item -Path 'RevokeMsgPatcher\\bin\\%BUILD_CONFIGURATION%\\*' -Destination 'C:\\output\\RevokeMsgPatcher' -Recurse
VOLUME ["C:\\output"]
CMD ["powershell", "-NoProfile", "-Command", "Write-Host 'Build complete. Artifacts are in C:\\output\\RevokeMsgPatcher'"]
Image mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019 NOT found on Docker Hub.
No results found.
# This Dockerfile targets building a Windows Forms .NET Framework 4.5.2 app # on a Linux host. Linux-based .NET SDKs cannot build this project as-is. # The build will likely fail due to target framework incompatibility. FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build WORKDIR /src COPY . . # Attempt to restore and build. This is expected to fail for a net452 WinForms project. RUN dotnet restore RevokeMsgPatcher.sln || true RUN dotnet build RevokeMsgPatcher.sln -c Release || true RUN dotnet publish RevokeMsgPatcher/RevokeMsgPatcher.csproj -c Release -o /app/publish || true FROM mcr.microsoft.com/dotnet/runtime:8.0 AS runtime WORKDIR /app COPY --from=build /app/publish ./ # If this project cannot be built on Linux, the container will not start a GUI # by design. You may need a Windows-based build agent or port the project to .NET 6+/net8. ENTRYPOINT ["bash", "-lc", "echo 'This project targets .NET Framework 4.5.2 and cannot be built/run on Linux Docker base images. Please port to .NET 5+/8 or use a Windows build agent.'"]
# This Dockerfile is for a Windows Forms .NET Framework 4.5.2 project. # Building and running this app on Linux-based Docker images is not feasible # due to framework and GUI dependencies. This container provides a # transparent message indicating that porting to .NET Core/5+/8 is required # or using a Windows build agent. FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build WORKDIR /src COPY . . # Attempt to restore/build/publish. The app targets .NET Framework 4.5.2 # (Windows-only). We use || true to allow the build to proceed for inspection. RUN dotnet restore RevokeMsgPatcher.sln || true RUN dotnet build RevokeMsgPatcher.sln -c Release || true RUN dotnet build RevokeMsgPatcher/RevokeMsgPatcher.csproj -c Release || true RUN dotnet publish RevokeMsgPatcher/RevokeMsgPatcher.csproj -c Release -o /app/publish || true FROM alpine:3.19 AS runtime WORKDIR /app # The app cannot run on Linux; this stage exists only to provide a consistent # container layout. We intentionally do not ship a Windows GUI. # Copy any built assets if present (not expected for this project on Linux) COPY --from=build /app/publish ./publish 2>/dev/null || true # Simple entrypoint that informs about incompatibility and how to proceed. ENTRYPOINT ["/bin/sh", "-lc", "echo 'This project targets Windows .NET Framework 4.5.2 and cannot be built or run on Linux Docker images. Please port to .NET 5+/8 or use a Windows build agent.'"]
# Linux-based container for a Windows .NET Framework 4.5.2 GUI app. # Linux containers cannot build or run this project as-is. This Dockerfile # provides a guidance container that informs about incompatibility and how to proceed. FROM ubuntu:22.04 WORKDIR /app # Copy project source (for inspection). We do not install Windows/.NET Framework here. COPY . . # Add an entrypoint that explains the incompatibility and suggests next steps. COPY entrypoint.sh /usr/local/bin/entrypoint.sh RUN chmod +x /usr/local/bin/entrypoint.sh ENTRYPOINT ["/usr/local/bin/entrypoint.sh"]
#!/bin/sh set -e cat <<EOF This repository's RevokeMsgPatcher is a Windows .NET Framework 4.5.2 GUI app. Linux-based Docker images cannot build or run this project as-is. Recommended actions: - Port the project to .NET 6/7/8 (net6.0+)/net8.0 and use a Linux-compatible Dockerfile with dotnet SDK/runtime. - Or build and run on Windows with a Windows container / build agent. EOF
# Ignore git, logs, and node_modules .git .gitignore node_modules *.log Dockerfile .dockerignore README.md
Concerns: No build steps to compile or package the C# .NET Framework 4.5.2 app; this image is a placeholder rather than a build container., The base image is Ubuntu, but Windows/.NET Framework GUI apps cannot run in Linux containers; the design should use a Windows container or a cross-platform approach., COPY . . copies the entire build context without a .dockerignore; could lead to large contexts and potential security concerns.
FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build WORKDIR /src COPY . . RUN dotnet restore RevokeMsgPatcher.sln RUN dotnet build RevokeMsgPatcher.sln -c Release RUN dotnet publish RevokeMsgPatcher/RevokeMsgPatcher.csproj -c Release -o /app/publish FROM mcr.microsoft.com/dotnet/runtime:8.0 AS runtime WORKDIR /app COPY --from=build /app/publish ./ ENTRYPOINT ["dotnet", "RevokeMsgPatcher.dll"]
FROM dotnet/sdk:8.0 AS build WORKDIR /src COPY . . RUN dotnet restore RevokeMsgPatcher.sln RUN dotnet build RevokeMsgPatcher.sln -c Release RUN dotnet publish RevokeMsgPatcher/RevokeMsgPatcher.csproj -c Release -o /app/publish FROM dotnet/runtime:8.0 AS runtime WORKDIR /app COPY --from=build /app/publish ./ ENTRYPOINT ["dotnet", "RevokeMsgPatcher.dll"]