Skip to content

Windows container fails to run when using isolation=process #170

@hanxiao1982

Description

@hanxiao1982

Now both Windows Client OS and Windows Server OS are supporting the isolation=process on Docker for Windows. But after switch default isolation to process, VS 2017 docker tools fails to start debug and output error:

Severity Code Description Project File Line Suppression State
Error CTP1002 An error occurred while attempting to run Docker container. HelloWorld C:\Users\hanxiao.nuget\packages\microsoft.visualstudio.azure.containers.tools.targets\1.4.4\build\Container.targets 256

Repro steps:

  1. Switch isolation to process by updating the Docker daemon settingss to "Advanced", then manual add the isolation setting, the settings is like below:
{
  "registry-mirrors": [],
  "insecure-registries": [],
  "debug": true,
  "experimental": true,
  "exec-opts": [
    "isolation=process"
  ]
}

  1. Create and ASP.net Core HelloWorld project, start debug, you will see the error.
    Below is the output of build window:
1>docker run -dt -v "C:\Users\hanxiao\onecoremsvsmon\16.0.28608.199:C:\remote_debugger:ro" -v "C:\Users\hanxiao\source\repos\HelloWorld\HelloWorld:C:\app" -v "C:\Users\hanxiao\AppData\Roaming\ASP.NET\Https:C:\Users\ContainerUser\AppData\Roaming\ASP.NET\Https:ro" -v "C:\Users\hanxiao\AppData\Roaming\Microsoft\UserSecrets:C:\Users\ContainerUser\AppData\Roaming\Microsoft\UserSecrets:ro" -v "C:\Users\hanxiao\.nuget\packages\:c:\.nuget\fallbackpackages2" -v "C:\Program Files\dotnet\sdk\NuGetFallbackFolder:c:\.nuget\fallbackpackages" -e "DOTNET_USE_POLLING_FILE_WATCHER=1" -e "ASPNETCORE_ENVIRONMENT=Development" -e "ASPNETCORE_URLS=https://+:443;http://+:80" -e "ASPNETCORE_HTTPS_PORT=44349" -e "NUGET_PACKAGES=c:\.nuget\fallbackpackages2" -e "NUGET_FALLBACK_PACKAGES=c:\.nuget\fallbackpackages;c:\.nuget\fallbackpackages2" -p 9689:80 -p 44349:443 --entrypoint C:\remote_debugger\x64\msvsmon.exe helloworld:dev /noauth /anyuser /silent /nostatus /noclrwarn /nosecuritywarn /nofirewallwarn /nowowwarn /fallbackloadremotemanagedpdbs /timeout:2147483646
1>9b179ffbcd9137244b1af2fe38b730593705b5590cd86e479d6edecb021bcec2
1>docker: Error response from daemon: container 9b179ffbcd9137244b1af2fe38b730593705b5590cd86e479d6edecb021bcec2 encountered an error during CreateProcess: failure in a Windows system call: Access is denied. (0x5) extra info: {"CommandLine":"C:\\remote_debugger\\x64\\msvsmon.exe /noauth /anyuser /silent /nostatus /noclrwarn /nosecuritywarn /nofirewallwarn /nowowwarn /fallbackloadremotemanagedpdbs /timeout:2147483646","User":"ContainerUser","WorkingDirectory":"C:\\app","Environment":{"ASPNETCORE_ENVIRONMENT":"Development","ASPNETCORE_HTTPS_PORT":"44349","ASPNETCORE_URLS":"https://+:443;http://+:80","DOTNET_RUNNING_IN_CONTAINER":"true","DOTNET_USE_POLLING_FILE_WATCHER":"1","NUGET_FALLBACK_PACKAGES":"c:\\.nuget\\fallbackpackages;c:\\.nuget\\fallbackpackages2","NUGET_PACKAGES":"c:\\.nuget\\fallbackpackages2"},"EmulateConsole":true,"CreateStdInPipe":true,"CreateStdOutPipe":true,"ConsoleSize":[0,0]}.
1>C:\Users\hanxiao\.nuget\packages\microsoft.visualstudio.azure.containers.tools.targets\1.4.4\build\Container.targets(256,5): error CTP1002: An error occurred while attempting to run Docker container.
1>Done building project "HelloWorld.csproj" -- FAILED.
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

The actual error is:
encountered an error during CreateProcess: failure in a Windows system call: Access is denied. (0x5)

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions