我在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
我该如何解决这个问题?
当前回答
弃用' latest '标签
为了鼓励更好的容器实践,我们在所有Windows基映像中都弃用' latest '标签。在2019日历年年初,我们将不再发布标签;我们将从可用标记列表中删除它。
我们强烈建议您声明希望在生产环境中运行的特定容器标记。“latest”标签是specific的反义词;除了图像名称,它不会告诉用户容器实际是什么版本。你可以阅读更多关于版本兼容性和选择适当的标签在我们的容器文档。
https://techcommunity.microsoft.com/t5/containers/windows-server-2019-now-available/ba-p/382430#
其他回答
你需要先使用Linux平台,然后才能在Windows上运行:
docker pull --platform linux php
docker run -it php
参见博文Docker for Windows Desktop 18.02 with Windows 10 Fall Creators Update。
这可能不仅仅发生在windows容器上!
现在所有的Node.Js docker映像都是不可拉的。总是检查你要拉之前的图像。
相关Github-Issue
以我为例,我使用的Windows操作系统版本不支持我试图拉出的标签。利用一个旧的标签让我可以让它工作。
具体地说:
Docker pull McR.microsoft.com/windows/nanoserver:1903错误
Docker拉McR.microsoft.com/windows/nanoserver:1803-amd64工作
您已进入Windows容器模式。因此,如果您不确定想要提取的映像是为Windows体系结构构建的,那么您需要切换到Linux容器。
造成这个错误的原因可能有很多。但是导致这个错误最明显的原因是在Linux容器模式下使用Windows容器,反之亦然。
单击上下文菜单中的系统托盘中的Docker图标 点击“切换到Window/Linux容器” 选项单击“切换对话框”中的“切换按钮” 这可能花不了多少时间 确保Docker现在处于运行状态