如何使 Windows 上的 Docker CLI 在启动时与 Minikube 配合使用,并进行正确的基于本地主机的端口映射?

如何使 Windows 上的 Docker CLI 在启动时与 Minikube 配合使用,并进行正确的基于本地主机的端口映射?

我已经阅读了十几篇关于如何在 Windows 上使用 Minikube 设置 Docker CLI(或者反之,取决于你如何看待它)的文章。

这个想法是在观看这个 YouTube 视频时产生的:DevOps Toolkit - 适用于 Mac 和 Windows 的免费 Docker 桌面替代品

到目前为止我做了什么?首先,我已经设置了必要的软件包:

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All
choco install docker-cli minikube k9s -y
...

然后启动Minikube:

$ minikube start

答案1

本地主机网络很特殊。它值得信赖。这也意味着你不能轻易地将远程端口带到本地主机(虚拟机被视为远程。)当然,根据具体情况,使用用户空间工具或通过netsh 端口代理。Minikube 不提供对此的支持。

WSL 2 内置了 localhost 绑定。​​所以也许可以尝试一下。设置有点复杂,但之后,它的工作方式与这里的 Minikube 基本相同。WSL 2 也是 Docker Desktop 现在用来实际运行 Docker 守护程序的工具。

无论如何,要在 Windows 上使用 Docker CLI,它需要进行一些配置。这就是minikube -p minikube docker-env --shell powershell打印的内容。要在启动 PowerShell 时运行代码,请使用个人资料。与 Linux shell 的工作方式非常相似,您将代码放在特定位置的文件中,仅此而已。对于您的用例,我建议将代码放在“当前用户,所有主机”配置文件中。要获取其路径,请$PROFILE.CurrentUserAllHosts在 PowerShell 中使用。PowerShell 和 PowerShell Core 有所不同。

相关内容