我在Windows上使用Docker,当我试图用这个命令拉一个PHP图像时
$ docker pull php
我收到了这样的信息:
Using default tag: latest
latest: Pulling from library/php no matching manifest for windows/amd64
in the manifest list entries
我该如何解决这个问题?
我在Windows上使用Docker,当我试图用这个命令拉一个PHP图像时
$ docker pull php
我收到了这样的信息:
Using default tag: latest
latest: Pulling from library/php no matching manifest for windows/amd64
in the manifest list entries
我该如何解决这个问题?
当前回答
我在Windows 10上也遇到了同样的问题。我通过在实验模式下运行Docker守护进程来绕过它:
右键单击Windows系统托盘中的Docker图标 进入设置 守护进程 先进的 设置“experimental”:true 重启码头工人
其他回答
考虑一下您正在导入的应用程序——它们是基于Windows的吗? 如果不是,则需要运行Linux容器。
如果不使用实验模式,你只能在一种容器风格中使用Docker。 如果您像上面提到的那样激活实验模式,那么您可以根据在撰写文件中拉入的应用程序的需要使用Windows和Linux容器。
重点说明:实验性- Docker仍在开发中。
我有同样的问题运行Windows IIS映像使用docker for Windows。读了上面Mohammad Trabelsi的回复,我意识到要解决我的问题,我需要把我的容器(在docker上)切换到Windows容器。
这样做:
右击Docker实例 选择“切换到Windows容器…”
以我为例,我使用的Windows操作系统版本不支持我试图拉出的标签。利用一个旧的标签让我可以让它工作。
具体地说:
Docker pull McR.microsoft.com/windows/nanoserver:1903错误
Docker拉McR.microsoft.com/windows/nanoserver:1803-amd64工作
Docker run McR.microsoft.com/windows/servercore:ltsc2016
试试上面的命令。 您正在提取的内容应该与您所在的底层Windows版本兼容。如果你使用的是Windows server 2016,上面的内容也适用。
关注这条线索获取更多信息
https://github.com/docker/for-win/issues/3761
我在Windows 10上也遇到了同样的问题。我通过在实验模式下运行Docker守护进程来绕过它:
右键单击Windows系统托盘中的Docker图标 进入设置 守护进程 先进的 设置“experimental”:true 重启码头工人