Windows 上的 minikube 和 docker-machine 在确定 hyper-v 模块是否可用时出现了一些问题。了解更多信息:
- https://github.com/kubernetes/minikube/issues/2634 https://github.com/kubernetes/minikube/issues/2634
- https://github.com/docker/machine/issues/4424 https://github.com/docker/machine/issues/4424
但这不是必需的。
是什么,在两台 Windows 10 机器上,都是最新的,都带有 WMF 5.1 (PSVersion 5.1.16299.251) 运行时Get-Command hyper-v\get-vm
我们得到不同的结果。
让我演示一下:
区别在于模块名称不同。这是“hyper-v”与“Hyper-V”。
我逐字节比较了里面的文件C:\Windows\System32\WindowsPowerShell\v1.0\Modules\Hyper-V
。它们是相同的,并且路径名具有相同的大小写。
那么为什么会有这样的差异呢?
这可能是由模块的导入方式引起的:
Import-Module Hyper-v
(Get-Command hyper-v\get-vm).Module.Name
前面的代码将模块报告为Hyper-v
.
您可以通过执行以下查询来避免此问题:
@(Get-Module -ListAvailable hyper-v).Name | Get-Unique
您将获得所有版本的 PowerShell 和 Windows 构建版本之间一致的大小写。
Expected:
But this is sometimes seen:
注意:为模块安装了两个库,您可以使用Get-Module -ListAvailable
。也许这些版本或 Windows 构建或发行版本有所不同?至少,此信息自 Windows 10 以来一直相关,因为它们不再固定。他们可能有助于精确定位(添加评论)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)