-
Notifications
You must be signed in to change notification settings - Fork 2k
Add Windows Server Core and Nano Server 2025 .NET sample images #6515
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Co-authored-by: lbussell <[email protected]>
Co-authored-by: lbussell <[email protected]>
Co-authored-by: lbussell <[email protected]>
|
Just as a heads up, I was blocked by some firewall rules while working on your feedback. Expand below for details. Warning Firewall rules blocked me from connecting to one or more addressesI tried to connect to the following addresses, but was blocked by firewall rules:
If you need me to access, download, or install something from one of these locations, you can either:
|
lbussell
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some sample Dockerfiles are still referencing ltsc2022:
- samples\dotnetapp\Dockerfile.nanoserver
- samples\aspnetapp\Dockerfile.nanoserver
Co-authored-by: lbussell <[email protected]>
Updated all sample Dockerfiles to use ltsc2025 as the default TAG value instead of ltsc2022. This includes samples/dotnetapp/Dockerfile.nanoserver and samples/aspnetapp/Dockerfile.nanoserver as well as the other Windows sample Dockerfiles. Commit: 59921eb Warning Firewall rules blocked me from connecting to one or more addressesI tried to connect to the following addresses, but was blocked by firewall rules:
If you need me to access, download, or install something from one of these locations, you can either:
|
|
This can be merged after the expected Windows release tomorrow. |
|
This suggests to me that we don't need Server 2025 samples but can re-use the 2022 ones. In fact, that would be a useful test case. |
I see you're referencing the Windows container version compatibility documentation. Are you suggesting we should remove all the ltsc2025 entries from manifest.samples.json and revert the Dockerfile changes to use ltsc2022 as the default? The current implementation adds ltsc2025 sample entries alongside the existing ltsc2022 ones, but if version compatibility allows reusing 2022 samples for 2025, I can remove the ltsc2025-specific entries. Could you clarify the specific changes you'd like me to make? Warning Firewall rules blocked me from connecting to one or more addressesI tried to connect to the following addresses, but was blocked by firewall rules:
If you need me to access, download, or install something from one of these locations, you can either:
|
This PR adds support for Windows Server 2025 sample images for .NET applications, bringing them up to date with the latest Windows Server release.
Changes Made
1. Updated
manifest.samples.jsonnanoserver-ltsc2025entries for bothdotnetappandaspnetappsampleswindowsservercore-ltsc2025entries for bothdotnetappandaspnetappsampleswindowsservercore-iis-ltsc2025entry foraspnetappsampleltsc2022entries with appropriate build dependencies2. Updated Dockerfiles for Flexibility
Updated all Windows Server Core Dockerfiles to use parameterized tags instead of hardcoded
ltsc2022references:samples/dotnetapp/Dockerfile.windowsservercoresamples/aspnetapp/Dockerfile.windowsservercoresamples/aspnetapp/Dockerfile.windowsservercore-iisBefore:
FROM mcr.microsoft.com/dotnet/sdk:9.0-windowsservercore-ltsc2022 AS buildAfter:
This approach allows the same Dockerfile to be used for both
ltsc2022andltsc2025by setting theTAGbuild argument.3. Updated Test Data
ltsc2025entries toTestData.csfor proper test coverage of the new Windows Server 2025 images4. Updated Documentation
ltsc2025image examplesselecting-tags.mdto include Windows Server 2025 examples in the supported tags listsExample Usage
The new Windows Server 2025 images can be used as follows:
Backward Compatibility
All changes are backward compatible. Existing
ltsc2022images and build processes continue to work unchanged, as the defaultTAGvalue remainsltsc2022.Fixes #6514.
Warning
Firewall rules blocked me from connecting to one or more addresses
I tried to connect to the following addresses, but was blocked by firewall rules:
1k9vsblobprodcus379.vsblob.vsassets.io/home/REDACTED/work/dotnet-docker/dotnet-docker/.dotnet/dotnet test --filter Category=pre-build --logger:trx(dns block)1s1vsblobprodcus386.vsblob.vsassets.io/home/REDACTED/work/dotnet-docker/dotnet-docker/.dotnet/dotnet test --filter Category=pre-build --logger:trx(dns block)2zrvsblobprodcus388.vsblob.vsassets.io/home/REDACTED/work/dotnet-docker/dotnet-docker/.dotnet/dotnet test --filter Category=pre-build --logger:trx(dns block)51yvsblobprodcus36.vsblob.vsassets.io/home/REDACTED/work/dotnet-docker/dotnet-docker/.dotnet/dotnet test --filter Category=pre-build --logger:trx(dns block)7tjvsblobprodcus341.vsblob.vsassets.io/home/REDACTED/work/dotnet-docker/dotnet-docker/.dotnet/dotnet test --filter Category=pre-build --logger:trx(dns block)80zvsblobprodcus35.vsblob.vsassets.io/home/REDACTED/work/dotnet-docker/dotnet-docker/.dotnet/dotnet test --filter Category=pre-build --logger:trx(dns block)8xbvsblobprodcus382.vsblob.vsassets.io/home/REDACTED/work/dotnet-docker/dotnet-docker/.dotnet/dotnet test --filter Category=pre-build --logger:trx(dns block)96bvsblobprodcus338.vsblob.vsassets.io/home/REDACTED/work/dotnet-docker/dotnet-docker/.dotnet/dotnet test --filter Category=pre-build --logger:trx(dns block)aka.mscurl -I -sSL --retry 5 --retry-delay 2 --connect-timeout 15 REDACTED(dns block)c50vsblobprodcus330.vsblob.vsassets.io/home/REDACTED/work/dotnet-docker/dotnet-docker/.dotnet/dotnet test --filter Category=pre-build --logger:trx(dns block)imzvsblobprodcus368.vsblob.vsassets.io/home/REDACTED/work/dotnet-docker/dotnet-docker/.dotnet/dotnet test --filter Category=pre-build --logger:trx(dns block)jd4vsblobprodcus366.vsblob.vsassets.io/home/REDACTED/work/dotnet-docker/dotnet-docker/.dotnet/dotnet test --filter Category=pre-build --logger:trx(dns block)jrqvsblobprodcus343.vsblob.vsassets.io/home/REDACTED/work/dotnet-docker/dotnet-docker/.dotnet/dotnet test --filter Category=pre-build --logger:trx(dns block)kmuvsblobprodcus389.vsblob.vsassets.io/home/REDACTED/work/dotnet-docker/dotnet-docker/.dotnet/dotnet test --filter Category=pre-build --logger:trx(dns block)l49vsblobprodcus358.vsblob.vsassets.io/home/REDACTED/work/dotnet-docker/dotnet-docker/.dotnet/dotnet test --filter Category=pre-build --logger:trx(dns block)lylvsblobprodcus31.vsblob.vsassets.io/home/REDACTED/work/dotnet-docker/dotnet-docker/.dotnet/dotnet test --filter Category=pre-build --logger:trx(dns block)m8dvsblobprodcus37.vsblob.vsassets.io/home/REDACTED/work/dotnet-docker/dotnet-docker/.dotnet/dotnet test --filter Category=pre-build --logger:trx(dns block)n3kvsblobprodcus335.vsblob.vsassets.io/home/REDACTED/work/dotnet-docker/dotnet-docker/.dotnet/dotnet test --filter Category=pre-build --logger:trx(dns block)o3svsblobprodcus318.vsblob.vsassets.io/home/REDACTED/work/dotnet-docker/dotnet-docker/.dotnet/dotnet test --filter Category=pre-build --logger:trx(dns block)vb4vsblobprodcus33.vsblob.vsassets.io/home/REDACTED/work/dotnet-docker/dotnet-docker/.dotnet/dotnet test --filter Category=pre-build --logger:trx(dns block)vwvvsblobprodcus334.vsblob.vsassets.io/home/REDACTED/work/dotnet-docker/dotnet-docker/.dotnet/dotnet test --filter Category=pre-build --logger:trx(dns block)If you need me to access, download, or install something from one of these locations, you can either:
💬 Share your feedback on Copilot coding agent for the chance to win a $200 gift card! Click here to start the survey.