【问题标题】:Docker pull fails on Windows 10 in Windows Container mode在 Windows 容器模式下的 Windows 10 上,Docker 拉取失败
【发布时间】:2020-07-26 07:16:30
【问题描述】:

我正在尝试在 Windows 10 上本地运行 docker:https://docs.microsoft.com/en-us/virtualization/windowscontainers/quick-start/set-up-environment?tabs=Windows-10-Client

我的 Windows 版本是:

OS Name:                   Microsoft Windows 10 Pro
OS Version:                10.0.18362 N/A Build 18362.720

Docker 版本是:

Docker version 19.03.8, build afacb8b

{
  "registry-mirrors": [],
  "insecure-registries": [],
  "debug": true,
  "experimental": true
}

Docker Desktop Community : 2.2.0.5 (43884)

这是安装后菜单的外观:即我处于“Windows 容器模式”

注意:在安装 docker 之前,我确保在 Windows 功能选项中启用了“Containers”和“Hyper V”。

安装 Docker 后,我运行了这个命令:

docker pull ubuntu

我得到这个输出有一个错误

C:\Users\angshuman>docker run ubuntu
Unable to find image 'ubuntu:latest' locally
latest: Pulling from library/ubuntu

5bed26d33875: Pull complete
f11b29a9c730: Pull complete
930bda195c84: Pull complete
78bf9a5ad49e: Pull complete
Digest: sha256:bec5a2727be7fff3d308193cfde3491f8fba1a2ba392b7546b43a051853a341d
Status: Downloaded newer image for ubuntu:latest

错误:

time="2020-04-13T17:50:47+01:00" level=error msg="错误等待 容器:无法关闭容器:容器 21892c2c1e7edf42bb1255809605579aa79cd0b94b1d4b6edd8fd5a55aab87d2 在 hcsshim::System::waitBackground: failure 期间遇到错误 在 Windows 系统调用中:具有 指定的标识符未运行。 (0xc0370110): 后续 终止失败的容器 21892c2c1e7edf42bb1255809605579aa79cd0b94b1d4b6edd8fd5a55aab87d2 在 hcsshim::System::waitBackground: failure 期间遇到错误 在 Windows 系统调用中:具有 指定的标识符未运行。 (0xc0370110)

知道如何解决这个问题吗?

编辑:在下面的答案中提出建议后

我降级到2.2.0.3 并启用了experimental : trueWindows Container

这次它下载图像,仍然没有运行。 问题仍然存在,现在出现另一个错误。

错误:

docker: Error response from daemon: container 0bb1d91f5e1090bc83e8541d923484a1c07dd5adae7a7779ac0f080bd5c11815 encountered an error during CreateProcess: failure in a Windows system call: Unspecified error (0x80004005)
[Event Detail: failed to run runc create/exec call for container 0bb1d91f5e1090bc83e8541d923484a1c07dd5adae7a7779ac0f080bd5c11815: exit status 1 Stack Trace:
github.com/Microsoft/opengcs/service/gcs/runtime/runc.(*container).startProcess
        /go/src/github.com/Microsoft/opengcs/service/gcs/runtime/runc/runc.go:580
github.com/Microsoft/opengcs/service/gcs/runtime/runc.(*runcRuntime).runCreateCommand
        /go/src/github.com/Microsoft/opengcs/service/gcs/runtime/runc/runc.go:471
github.com/Microsoft/opengcs/service/gcs/runtime/runc.(*runcRuntime).CreateContainer
        /go/src/github.com/Microsoft/opengcs/service/gcs/runtime/runc/runc.go:113
github.com/Microsoft/opengcs/service/gcs/core/gcs.(*gcsCore).ExecProcess
        /go/src/github.com/Microsoft/opengcs/service/gcs/core/gcs/gcs.go:351
github.com/Microsoft/opengcs/service/gcs/bridge.(*Bridge).execProcess
        /go/src/github.com/Microsoft/opengcs/service/gcs/bridge/bridge.go:637
github.com/Microsoft/opengcs/service/gcs/bridge.(*Bridge).execProcess-fm
        /go/src/github.com/Microsoft/opengcs/service/gcs/bridge/bridge.go:253
github.com/Microsoft/opengcs/service/gcs/bridge.HandlerFunc.ServeMsg
        /go/src/github.com/Microsoft/opengcs/service/gcs/bridge/bridge.go:72
github.com/Microsoft/opengcs/service/gcs/bridge.(*Mux).ServeMsg
        /go/src/github.com/Microsoft/opengcs/service/gcs/bridge/bridge.go:146
github.com/Microsoft/opengcs/service/gcs/bridge.(*Bridge).ListenAndServe.func2.1
        /go/src/github.com/Microsoft/opengcs/service/gcs/bridge/bridge.go:335
runtime.goexit
        /usr/lib/go/src/runtime/asm_amd64.s:1333 
Provider: 00000000-0000-0000-0000-000000000000] 

extra info: {"CommandArgs":["-t"],"WorkingDirectory":"/","Environment":{"HOSTNAME":"0bb1d91f5e10","PATH":"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"},"CreateStdInPipe":true,"CreateStdOutPipe":true,"CreateStdErrPipe":true,"ConsoleSize":[0,0],"OCISpecification":{"ociVersion":"1.0.1-dev","process":{"user":{"uid":0,"gid":0},"args":["-t"],"env":["PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin","HOSTNAME=0bb1d91f5e10"],"cwd":"/","capabilities":{"bounding":["CAP_CHOWN","CAP_DAC_OVERRIDE","CAP_FSETID","CAP_FOWNER","CAP_MKNOD","CAP_NET_RAW","CAP_SETGID","CAP_SETUID","CAP_SETFCAP","CAP_SETPCAP","CAP_NET_BIND_SERVICE","CAP_SYS_CHROOT","CAP_KILL","CAP_AUDIT_WRITE"],"effective":["CAP_CHOWN","CAP_DAC_OVERRIDE","CAP_FSETID","CAP_FOWNER","CAP_MKNOD","CAP_NET_RAW","CAP_SETGID","CAP_SETUID","CAP_SETFCAP","CAP_SETPCAP","CAP_NET_BIND_SERVICE","CAP_SYS_CHROOT","CAP_KILL","CAP_AUDIT_WRITE"],"inheritable":["CAP_CHOWN","CAP_DAC_OVERRIDE","CAP_FSETID","CAP_FOWNER","CAP_MKNOD","CAP_NET_RAW","CAP_SETGID","CAP_SETUID","CAP_SETFCAP","CAP_SETPCAP","CAP_NET_BIND_SERVICE","CAP_SYS_CHROOT","CAP_KILL","CAP_AUDIT_WRITE"],"permitted":["CAP_CHOWN","CAP_DAC_OVERRIDE","CAP_FSETID","CAP_FOWNER","CAP_MKNOD","CAP_NET_RAW","CAP_SETGID","CAP_SETUID","CAP_SETFCAP","CAP_SETPCAP","CAP_NET_BIND_SERVICE","CAP_SYS_CHROOT","CAP_KILL","CAP_AUDIT_WRITE"]}},"root":{"path":"rootfs"},"hostname":"0bb1d91f5e10","mounts":[{"destination":"/proc","type":"proc","source":"proc","options":["nosuid","noexec","nodev"]},{"destination":"/dev","type":"tmpfs","source":"tmpfs","options":["nosuid","strictatime","mode=755","size=65536k"]},{"destination":"/dev/pts","type":"devpts","source":"devpts","options":["nosuid","noexec","newinstance","ptmxmode=0666","mode=0620","gid=5"]},{"destination":"/sys","type":"sysfs","source":"sysfs","options":["nosuid","noexec","nodev","ro"]},{"destination":"/sys/fs/cgroup","type":"cgroup","source":"cgroup","options":["ro","nosuid","noexec","nodev"]},{"destination":"/dev/mqueue","type":"mqueue","source":"mqueue","options":["nosuid","noexec","nodev"]},{"destination":"/dev/shm","type":"tmpfs","source":"shm","options":["nosuid","noexec","nodev","mode=1777"]}],"linux":{"resources":{},"namespaces":[{"type":"mount"},{"type":"network"},{"type":"uts"},{"type":"pid"},{"type":"ipc"}],"maskedPaths":["/proc/asound","/proc/acpi","/proc/kcore","/proc/keys","/proc/latency_stats","/proc/timer_list","/proc/timer_stats","/proc/sched_debug","/proc/scsi","/sys/firmware"],"readonlyPaths":["/proc/bus","/proc/fs","/proc/irq","/proc/sys","/proc/sysrq-trigger"]},"windows":{"layerFolders":["C:\\ProgramData\\Docker\\lcow\\ef134f2d5748c591bf21cc2b407c49dd9be012dad5d15052bab87fc00b96444f","C:\\ProgramData\\Docker\\lcow\\4712bcdc17711399918c44b2352c5585457db6b14285cc6b2d6b630ef4ced551","C:\\ProgramData\\Docker\\lcow\\970a55c64e9bb9d56007e940a6ac94de463a7ad4b602f2d829f21c29b92e5369","C:\\ProgramData\\Docker\\lcow\\79eeaef19460e004253147fa7b109664492516495d6c7d63b8631112be468f7d","C:\\ProgramData\\Docker\\lcow\\0bb1d91f5e1090bc83e8541d923484a1c07dd5adae7a7779ac0f080bd5c11815"],"hyperv":{},"network":{"endpointList":["B5E11D3C-E874-406C-BCC0-94E1173E3E1B"],"allowUnqualifiedDNSQuery":true}}}}.

C:\Users\angshuman>docker run 4e5021d210f6 -it
docker: Error response from daemon: container bdd2ed406d421f00c963190cc975e5bf5f1f22b9c3536af687870257968b1fc4 encountered an error during CreateProcess: failure in a Windows system call: Unspecified error (0x80004005)
[Event Detail: failed to run runc create/exec call for container bdd2ed406d421f00c963190cc975e5bf5f1f22b9c3536af687870257968b1fc4: exit status 1 Stack Trace:
github.com/Microsoft/opengcs/service/gcs/runtime/runc.(*container).startProcess
        /go/src/github.com/Microsoft/opengcs/service/gcs/runtime/runc/runc.go:580
github.com/Microsoft/opengcs/service/gcs/runtime/runc.(*runcRuntime).runCreateCommand
        /go/src/github.com/Microsoft/opengcs/service/gcs/runtime/runc/runc.go:471
github.com/Microsoft/opengcs/service/gcs/runtime/runc.(*runcRuntime).CreateContainer
        /go/src/github.com/Microsoft/opengcs/service/gcs/runtime/runc/runc.go:113
github.com/Microsoft/opengcs/service/gcs/core/gcs.(*gcsCore).ExecProcess
        /go/src/github.com/Microsoft/opengcs/service/gcs/core/gcs/gcs.go:351
github.com/Microsoft/opengcs/service/gcs/bridge.(*Bridge).execProcess
        /go/src/github.com/Microsoft/opengcs/service/gcs/bridge/bridge.go:637
github.com/Microsoft/opengcs/service/gcs/bridge.(*Bridge).execProcess-fm
        /go/src/github.com/Microsoft/opengcs/service/gcs/bridge/bridge.go:253
github.com/Microsoft/opengcs/service/gcs/bridge.HandlerFunc.ServeMsg
        /go/src/github.com/Microsoft/opengcs/service/gcs/bridge/bridge.go:72
github.com/Microsoft/opengcs/service/gcs/bridge.(*Mux).ServeMsg
        /go/src/github.com/Microsoft/opengcs/service/gcs/bridge/bridge.go:146
github.com/Microsoft/opengcs/service/gcs/bridge.(*Bridge).ListenAndServe.func2.1
        /go/src/github.com/Microsoft/opengcs/service/gcs/bridge/bridge.go:335
runtime.goexit
        /usr/lib/go/src/runtime/asm_amd64.s:1333 Provider: 00000000-0000-0000-0000-000000000000] extra info: {"CommandArgs":["-it"],"WorkingDirectory":"/","Environment":{"HOSTNAME":"bdd2ed406d42","PATH":"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"},"CreateStdInPipe":true,"CreateStdOutPipe":true,"CreateStdErrPipe":true,"ConsoleSize":[0,0],"OCISpecification":{"ociVersion":"1.0.1-dev","process":{"user":{"uid":0,"gid":0},"args":["-it"],"env":["PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin","HOSTNAME=bdd2ed406d42"],"cwd":"/","capabilities":{"bounding":["CAP_CHOWN","CAP_DAC_OVERRIDE","CAP_FSETID","CAP_FOWNER","CAP_MKNOD","CAP_NET_RAW","CAP_SETGID","CAP_SETUID","CAP_SETFCAP","CAP_SETPCAP","CAP_NET_BIND_SERVICE","CAP_SYS_CHROOT","CAP_KILL","CAP_AUDIT_WRITE"],"effective":["CAP_CHOWN","CAP_DAC_OVERRIDE","CAP_FSETID","CAP_FOWNER","CAP_MKNOD","CAP_NET_RAW","CAP_SETGID","CAP_SETUID","CAP_SETFCAP","CAP_SETPCAP","CAP_NET_BIND_SERVICE","CAP_SYS_CHROOT","CAP_KILL","CAP_AUDIT_WRITE"],"inheritable":["CAP_CHOWN","CAP_DAC_OVERRIDE","CAP_FSETID","CAP_FOWNER","CAP_MKNOD","CAP_NET_RAW","CAP_SETGID","CAP_SETUID","CAP_SETFCAP","CAP_SETPCAP","CAP_NET_BIND_SERVICE","CAP_SYS_CHROOT","CAP_KILL","CAP_AUDIT_WRITE"],"permitted":["CAP_CHOWN","CAP_DAC_OVERRIDE","CAP_FSETID","CAP_FOWNER","CAP_MKNOD","CAP_NET_RAW","CAP_SETGID","CAP_SETUID","CAP_SETFCAP","CAP_SETPCAP","CAP_NET_BIND_SERVICE","CAP_SYS_CHROOT","CAP_KILL","CAP_AUDIT_WRITE"]}},"root":{"path":"rootfs"},"hostname":"bdd2ed406d42","mounts":[{"destination":"/proc","type":"proc","source":"proc","options":["nosuid","noexec","nodev"]},{"destination":"/dev","type":"tmpfs","source":"tmpfs","options":["nosuid","strictatime","mode=755","size=65536k"]},{"destination":"/dev/pts","type":"devpts","source":"devpts","options":["nosuid","noexec","newinstance","ptmxmode=0666","mode=0620","gid=5"]},{"destination":"/sys","type":"sysfs","source":"sysfs","options":["nosuid","noexec","nodev","ro"]},{"destination":"/sys/fs/cgroup","type":"cgroup","source":"cgroup","options":["ro","nosuid","noexec","nodev"]},{"destination":"/dev/mqueue","type":"mqueue","source":"mqueue","options":["nosuid","noexec","nodev"]},{"destination":"/dev/shm","type":"tmpfs","source":"shm","options":["nosuid","noexec","nodev","mode=1777"]}],"linux":{"resources":{},"namespaces":[{"type":"mount"},{"type":"network"},{"type":"uts"},{"type":"pid"},{"type":"ipc"}],"maskedPaths":["/proc/asound","/proc/acpi","/proc/kcore","/proc/keys","/proc/latency_stats","/proc/timer_list","/proc/timer_stats","/proc/sched_debug","/proc/scsi","/sys/firmware"],"readonlyPaths":["/proc/bus","/proc/fs","/proc/irq","/proc/sys","/proc/sysrq-trigger"]},"windows":{"layerFolders":["C:\\ProgramData\\Docker\\lcow\\ef134f2d5748c591bf21cc2b407c49dd9be012dad5d15052bab87fc00b96444f","C:\\ProgramData\\Docker\\lcow\\4712bcdc17711399918c44b2352c5585457db6b14285cc6b2d6b630ef4ced551","C:\\ProgramData\\Docker\\lcow\\970a55c64e9bb9d56007e940a6ac94de463a7ad4b602f2d829f21c29b92e5369","C:\\ProgramData\\Docker\\lcow\\79eeaef19460e004253147fa7b109664492516495d6c7d63b8631112be468f7d","C:\\ProgramData\\Docker\\lcow\\bdd2ed406d421f00c963190cc975e5bf5f1f22b9c3536af687870257968b1fc4"],"hyperv":{},"network":{"endpointList":["C19D44B9-33F9-470A-8EC8-5C9283CE25FE"],"allowUnqualifiedDNSQuery":true}}}}.

谢谢

昂舒曼

【问题讨论】:

  • 我已经编辑了答案以解决您的最新编辑问题。

标签: windows docker containers


【解决方案1】:

2021 年 9 月更新,来自 issue

这个问题现在应该已经解决了。 CBFS Connect 开发人员在 v20.0.7921, released on September 8, 2021 中提到了一个修复。

不过,软件需要更新其 CBFS Connect 驱动程序。


这后面好像是microsoft/hcsshim issue 624

Windows 刚刚进行了更新并为该驱动程序提供了一个新副本。

  • 将 C:\Windows\System32\drivers\cbfs6.sys 重命名为其他名称(或将其删除)。
  • 移除容器。
  • 重启。

那又指docker/for-win/issue 3884

nsoftware.com 上的好人刚刚用他们的 SFTP Drive v2 解决了这个问题。
事实上,问题出在 cbfs 驱动程序中。新版本按预期工作,不会与 Docker 冲突。

但是microsoft/hcsshim issue 790 也提到了同样的错误:

Windows 2.2.0.4 和 2.2.0.5 的 Docker Desktop CE 中存在此问题

降级到 2.2.0.3 解决了这个问题。


如果您想“在 Windows 上本地运行容器”,next page 会提到像 mcr.microsoft.com/windows/nanoserver:1903 这样的图像

Ubuntu 映像无法在此模式下运行,只能在 Linux 容器模式下运行。


总结一下(2021 年 9 月之前):

  1. 将 Docker 桌面降级到 2.2.0.3
  2. 重启机器(别忘了)
  3. 删除所有以前创建的容器/图像(如果有)
  4. docker run -it ubuntu - (出于某种原因,显示 bash shell,然后退出交互模式)
  5. 再次运行 docker run -it ubuntu - 现在,现在(第二次)进入交互模式并保持不动

这行得通!

【讨论】:

猜你喜欢
  • 2019-03-19
  • 1970-01-01
  • 1970-01-01
  • 2021-12-10
  • 1970-01-01
  • 1970-01-01
  • 2018-01-21
  • 2021-11-20
  • 1970-01-01
相关资源
最近更新 更多