我有一个.Net框架和.NetCore容器,我想在Kubernetes中运行它们。我已经安装了Docker Desktop for Windows和Kubernetes。如何在Kubernetes中运行这些Windows容器?This文档说明了如何在Kubernetes上创建一个Windows节点,但它非常混乱。因为我在windows机器上,我看到了基于linux的命令(没有提到运行所有这些命令需要什么操作系统)。我使用的是Windows 10专业版计算机。有没有办法在Kubernetes上运行这些容器?
当我尝试使用Windows容器创建Pod时,会失败,并显示以下错误消息:“无法拉取镜像'imagename';rpc错误: code =未知desc =镜像操作系统'windows‘无法在此平台上使用”
发布于 2019-05-16 16:53:48
欢迎使用StackOverflow Srinath
据我所知,目前还不能在Kubernetes的本地版本上运行Windows容器。当您在Docker Desktop for Windows安装中启用Kubernetes选项时,Kubernetes群集只需在Hyper-V虚拟机管理程序上的Linux VM内运行(仅具有其自己的Docker Runtime for Linux containers )。
您的另一个解决方案是使用来自任何流行的云提供商的Windows节点的托管版本的Kubernetes。我认为相对容易开始的是Azure (如果你没有Azure订阅,创建一个free试用帐户,有效期为12个月)。
我建议你使用一种旧的方法在Azure上运行Kubernetes,一个叫做Azure Container service的服务,也就是ACS,原因之一是,我已经证实它可以很好地与Windows容器一起工作,特别是为了测试目的(我无法用它的继任者AKS实现同样的效果):
在Azure Cloud Shell中运行以下命令,您的群集将在几分钟内准备就绪。
az group create --name azEvalRG --location eastus
az acs create -g azEvalRG -n k8s-based-win -d k8s-based-win --windows --agent-count 1 -u azureuser --admin-password 'YourSecretPwd1234$' -t kubernetes --location eastushttps://stackoverflow.com/questions/56157504
复制相似问题