Windows 来自私有 Azure 注册表的容器未在 AKS 中启动

Windows container from private Azure registry does not start in AKS

我有一个包含两个容器的私有 Azure 容器注册表,一个基于 windows(mcr.microsoft.com/dotnet/core/samples:aspnetapp)和一个基于 linux(自定义测试)。我创建了一个秘密等,这似乎没问题。当我尝试使用 kubernetes 部署它们时,会发生以下情况:

有人吗?

-

test.yaml:

apiVersion: v1
items:

# basplus deployment

- apiVersion: apps/v1beta1
  kind: Deployment
  metadata:
    name: aspnetapp-private
  spec:
    replicas: 1
    template:
      metadata:
        labels:
          app: private
      spec:
        terminationGracePeriodSeconds: 100
        containers:
        - name: xxx
          image: spintheblackcircleshop.azurecr.io/aspnetapp
        imagePullSecrets:
          - name: mysecret

- apiVersion: apps/v1beta1
  kind: Deployment
  metadata:
    name: aspnetapp-public
  spec:
    replicas: 1
    template:
      metadata:
        labels:
          app: public
      spec:
        terminationGracePeriodSeconds: 100
        containers:
        - name: xxx
          image: mcr.microsoft.com/dotnet/core/samples:aspnetapp
        imagePullSecrets:
          - name: mysecret


- apiVersion: apps/v1beta1
  kind: Deployment
  metadata:
    name: aspnetapp-private-sleep
  spec:
    replicas: 1
    template:
      metadata:
        labels:
          app: private-sleep
      spec:
        terminationGracePeriodSeconds: 100
        containers:
        - name: xxx
          image: spintheblackcircleshop.azurecr.io/danielm-test-sleep
        imagePullSecrets:
          - name: mysecret

# end

kind: List
metadata: {}

AKS 尚不支持 windows 节点。在撰写本文时 (05/05/2019),无法在 AKS 中 运行 windows 容器。

编辑:其他答案提出的公平点。你实际上可以 运行 windows 容器在 aks 的 aci 中,但它不完全在 aks 中:)

嗯,AKS 目前不支持 windows 节点,但是当你在 AKS 中安装虚拟 kubelet 时,你可以在其中 运行 windows 容器。它利用了 ACI。

请参阅文档 Use Virtual Kubelet with Azure Kubernetes Service (AKS) 中安装虚拟 kubelet 和 运行 windows 容器的步骤。