在本地计算机上,我创建了一个Windows Docker / nano服务器容器,并能够使用此命令将该容器“推”到Azure容器注册表中(之所以必须使用Windows容器,是因为我必须使用ASP.NET Core中的CSOM,在Linux中是不可能的)
docker push MyContainerRegistry.azurecr.io/myimage:v1
该Docker容器在Azure容器注册表中即MyContainerRegistry内部可见
我知道要运行它,我必须创建一个容器实例;但是,我们的管理团队不想走这条路,而是要使用AKS
我们确实创建了AKS集群
kubectl IS在我们的Azure shell中运行
我尝试使用此命令创建AKS吊舱
kubectl apply -f myyaml.yaml
这些是Yaml文件的内容
apiVersion: apps/v1beta1
kind: Deployment
metadata:
name: mypod
spec:
replicas: 1
template:
metadata:
labels:
app: mypod
spec:
containers:
- name: mypod
image: MyContainerRegistry.azurecr.io/itataxsync:v1
ports:
- containerPort: 80
imagePullSecrets:
- name: mysecret
nodeSelector:
beta.kubernetes.io/os: windows
吊舱成功创建。
当我运行“获取豆荚”时,我会看到一个新创建的豆荚
但是,当我深入了解此Pod时,会看到以下内容
“警告失败计划3m(x2超过3m)默认计划程序0/3 节点可用:3个节点与节点选择器不匹配。“
这是否意味着我无法使用AKS在Azure中运行Docker Windows容器?
有什么办法可以在Azure中运行Docker Windows容器吗?
非常感谢您的帮助!
答案 0 :(得分:0)
您还不能在AKS上具有Windows节点,但是可以使用AKS engine(examples)。
请记住,在kubernetes中缺少Windows支持,因此,不幸的是,您会遇到问题。