创建Windows应用

本例演示如何通过编排模板创建一个包含DeploymentServiceWeb应用,并调度到Windows节点上运行。

前提条件

已创建Windows节点,请参见创建和管理Windows节点池

步骤一:部署示例应用

您可以参见以下流程部署示例应用:将一个 ASP.NET 应用部署到集群的 Windows 节点上。同时,Service 会自动创建一个负载均衡器实例,将应用的 80 端口对外暴露,提供一个可以从外部直接访问的 Web 应用。

  1. 登录容器服务管理控制台,在左侧导航栏选择集群列表

  2. 集群列表页面,单击目标集群名称,然后在左侧导航栏,选择工作负载 > 无状态

  3. 单击使用YAML创建资源,切换示例模板自定义,填写并提交YAML。

    展开查看示例YAML

    以下 YAML 定义了一个 ASP.NET 网页应用,指定调度到 Windows 节点上运行,并通过 LoadBalancer 类型的Service对外暴露。

    apiVersion: v1
    kind: Service
    metadata:
      labels:
        app: web-windows
      name: web-windows
    spec:
      type: LoadBalancer
      ports:
        - port: 80
          protocol: TCP
          targetPort: 8080
      selector:
        app: web-windows
    ---
    apiVersion: apps/v1
    kind: Deployment
    metadata:
      labels:
        app: web-windows
      name: web-windows
    spec:
      selector:
        matchLabels:
          app: web-windows
      template:
        metadata:
          labels:
            app: web-windows
        spec:
          restartPolicy: Always
          terminationGracePeriodSeconds: 30
          tolerations:
          - key: os
            value: windows
          affinity:
            nodeAffinity:
              requiredDuringSchedulingIgnoredDuringExecution:
                nodeSelectorTerms:
                - matchExpressions:
                  - key: kubernetes.io/os
                    operator: In
                    values:
                    - windows
          containers:
      # 请替换镜像地址中的<cn-hangzhou>为集群实际所在的地域。
            - image: registry-cn-hangzhou-vpc.ack.aliyuncs.com/acs/dotnet-samples:aspnetapp
              name: windows
              ports:
              - containerPort: 8080
                protocol: TCP

    提交后,返回无状态页面,可在Deployment列表查看新创建的Web应用。

步骤二:访问应用

  1. 集群列表页面,单击目标集群名称,然后在左侧导航栏,选择网络 > 服务

  2. 单击目标Service名称(web-windows),然后在基本信息区域单击服务的外部 IP 地址(External IP),访问Web应用。

    image