在Windows上使用minikube和docker-machine时会出现一些问题,确定hyper-v模块是否可用。有关更多信息:
但这不是必需的。
什么是两台Windows 10机器,两者都是最新的,都是WMF 5.1(PSVersion 5.1.16299.251)。当运行Get-Command hyper-v\get-vm
时,我们会得到不同的结果。
让我演示一下:
不同之处在于模块名称不同。它是“hyper-v”vs“Hyper-V”。
我比较了C:\Windows\System32\WindowsPowerShell\v1.0\Modules\Hyper-V
内的逐字节文件。它们是相同的,路径名称具有相同的外壳。
那为什么会有区别?
答案 0 :(得分:3)
这可能是由于导入模块的原因造成的:
Import-Module Hyper-v
(Get-Command hyper-v\get-vm).Module.Name
之前的代码会将模块报告为Hyper-v
。
执行查询时可以避免此问题,如下所示:
@(Get-Module -ListAvailable hyper-v).Name | Get-Unique
您将获得所有版本的PowerShell和Build版本的Windows之间保持一致的外壳。
注意:为模块安装了两个库,您可以使用Get-Module -ListAvailable
查看这些库。也许这些版本或Windows版本或发行版本有所不同?至少,这些信息与Windows 10相关,因为它们不再是固定的。他们可能会帮助精确定位(添加评论)。