Open SetTrend opened 5 months ago
@ntrappe-msft: Hello Nicole, may I raise this issue to your attention? I'm working for a blue-chip corporation running a critical project here and we need the above Windows image to be running smoothly in very short term.
Hi, I tried repro'ing your setup but I didn't hit that error. I'm wondering whether it's coming from something else. The image built successfully and I could start up the container with the mounted volume. Are you running this on Windows Server 2022? And could you share the version of Docker you're using?
Thanks for taking the time, Nicole.
I already provided the information you requested. It's just being collapsed behind the details
link in my original post. You need to click the "► details" link above to expand the information.
I didn't want to distract from the situation by littering my request with technical information, so I collapsed it.
@ntrappe-msft: FWIW, this is a screencast, depicting the issue:
https://github.com/microsoft/Windows-Containers/assets/9283914/e0037f79-4ae6-4180-a379-9d2bb0ddb2fc
NB: Today, a new Docker Desktop version arrived. Same issue … I updated the version information in my original post above to reflect the new Docker Desktop version.
The WS2016-based image keeps being picked by default for the 4.8
tag, can you try an explicit tag, either 4.8-windowsservercore-ltsc2022
or 4.8-windowsservercore-ltsc2019
?
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2022
@profnandaa. Thank you for this valuable suggestion!
Here are my test results:
Image | docker image build --rm --no-cache -m 2gb -t test:latest . |
docker run --rm -it test:latest |
docker run --rm -it --mount 'type=bind,src=D:\Documents\Repos\Docker\Create Docker Image,dst=C:\Repo' test:latest |
---|---|---|---|
4.8-windowsservercore-ltsc2019 |
✔️ | ✔️ | docker: Error response from daemon: hcs::CreateComputeSystem 3101d03d38051469f9a0e5394ea2850c05439fa75818c67d06b91ed9429b70ac: The request is not supported. |
4.8-windowsservercore-ltsc2022 |
a Windows version 10.0.20348-based image is incompatible with a 10.0.19045 host |
➖ | ➖ |
So, the 2019
image supports switching to the ContainerUser
context but doesn't support mounts. I cannot test the 2022
image as it's newer than my development VM.
Thanks @profnandaa for sharing more information. @SetTrend I'll be slow to respond this week because of Build but I'll attempt to repro again and look into when that error is typically thrown. Thanks for your patience.
Any new insights on this issue?
Hi! I believe I may know what's going on but I need to trace the Dockerfiles that make up the sdk images. I'll post an update on Monday.
@SetTrend Could you try pulling the latest mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2022
image? I was able to repro that error last week but, with the newest image (released today) it works perfectly.
See if you can try:
docker rmi mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2022
docker pull mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2022
docker run -u ContainerUser mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2022 powershell
If that doesn't work, it's likely a configuration issue with your host.
Hello, @ntrappe-msft, I tried today. Yet, this image is incompatible with my host:
a Windows version 10.0.20348-based image is incompatible with a 10.0.19045 host
Can you provide an image available for hosts like mine? Otherwise I would be required to request for setting up a whole new VM.
@SetTrend Hey, I believe 20348 == Windows 11
and 19045 == Windows 10
so try using mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019
instead.
I tried today. While I can now run as ContainerUser
I still cannot bind-mount. (See error description above.)
What is the cause for "The request is not supported.
"?
@SetTrend I couldn't repro that error. Could you try a very simple version of the command to see whether it's some file permissions that may be triggering it? Or if we're having more issues with setting the user in the Dockerfile?
PS C:\fake> dir
helloworld.txt
Then I mounted that folder in a .NET SDK 4.8 Server Core LTSC 2022 container:
docker run --rm -it --mount 'type=bind,src=C:\fake\,dst=C:\repo\' mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2022
Finally, I checked the contents of repo/
in the container and saw helloworld.txt
.
C:\> cd repo
C:\repo> dir
helloworld.txt
If this fails for you, then I'll probably need a crash dump.
Hello, @ntrappe-msft,
Pardon me for my late response.
I tried your suggestion. While it works for running a container from the original mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019
image, it doesn't work for running a container from the derived image, though.
@SetTrend Hmm that seems odd. I'll try to repro it with a derived image too.
Any news, @ntrappe-msft?
Any news, @ntrappe-msft?
Two months ago, my client refrained from using Docker for building their .NET Framework projects, as we didn't get a feasible, working solution from you.
I guess, no one in real life can be expected to wait for months to expect a future running solution.
So, this issue has become purely personal, for me to decide whether to use Windows Containers in the future:
Will I live to see this issue fixed? Or do you plan to consider this repository "deprecated" and "obsolete"?
Describe the bug (and Steps To Reproduce)
Building the following simple Dockerfile:
… using:
… and running the created image like this:
… results in:
Expected behavior
Everything should work flawlessly.
Configuration:
Additional context
This also doesn't work:
… results in:
The only difference is the additional
--mount
argument.