# escape=` # Use a Windows Server Core 2025 image that matches our build host. # If the version doesn't match the build host we cannot run # this container. I'm not sure with what specificity it has to # match, so let's pin this and then upgrade it as we upgrade # the host. FROM mcr.microsoft.com/windows/servercore:10.0.26100.7171 # Restore the default Windows shell for correct batch processing. SHELL ["cmd", "/S", "/C"] RUN ` curl -SL --output vs_buildtools.exe https://aka.ms/vs/17/release/vs_buildtools.exe ` ` && (start /w vs_buildtools.exe --quiet --wait --norestart --nocache ` --installPath "%ProgramFiles(x86)%\Microsoft Visual Studio\2022\BuildTools" ` --add Microsoft.VisualStudio.Workload.NativeDesktop ` || IF "%ERRORLEVEL%"=="3010" EXIT 0) ` ` REM Echo any Visual Studio installer logs from %TEMP% to Docker output ` && for %F in ("%TEMP%\dd_*.log") do @echo ===== %F ===== & type "%F" ` ` REM Optional: delete the logs to save space ` && del /Q "%TEMP%\dd_*.log" ` ` && del /Q vs_buildtools.exe # Define the entry point for the docker container. # This entry point starts the developer command prompt and launches the PowerShell shell. ENTRYPOINT ["C:\\Program Files (x86)\\Microsoft Visual Studio\\2022\\BuildTools\\Common7\\Tools\\VsDevCmd.bat", "&&", "powershell.exe", "-NoLogo", "-ExecutionPolicy", "Bypass"]