将Asp.net Core 微服务容器部署到 Kubernetes

将微服务容器部署到 Kubernetes

Kubernetes会为你运行容器,需要通过 YAML 文件描述希望 Kubernetes 执行的操作,在 Kubernetes 上部署和运行后端服务简单操作如下步骤

安装 Kubernetes 工具和实现

我们需要同时安装 kubectl 工具和 Kubernetes 实现
按照参考:
https://www.cnblogs.com/heyangyi/p/18061223
[Window10使用Docker-Desktop自带k8s和dashboard配置本地k8s开发环境]

为后端服务创建部署文件

可以使用 YAML 文件创建一个到 Kubernetes 的文件管理容器部署。 我们将创建一个文件来部署后端服务

---
apiVersion: apps/v1
kind: Deployment
metadata:
    name: k8s-ms-tenant-app
spec:
  replicas: 1
  template:
    metadata:
      labels:
        app: k8s-ms-tenant-app
    spec:
      containers:
      - name: k8s-ms-tenant-app
        image: k8s.ms.tenant.webapi:latest
        imagePullPolicy: Never
        ports:
        - containerPort: 80
        env:
        - name: ASPNETCORE_URLS
          value: http://*:80
        - name: ASPNETCORE_ENVIRONMENT
          value: Development
  selector:
    matchLabels:
      app: k8s-ms-tenant-app
---
apiVersion: v1
kind: Service
metadata:
  name: k8s-ms-tenant-app
spec:
  type: NodePort
  ports:
  - port: 80
    targetPort: 80
    nodePort: 32001
  selector:
    app: k8s-ms-tenant-app

第一部分定义了要部署到 Kubernetes 中的容器的部署规范。 它指定了一个副本、在哪里找到容器映像、在容器上打开哪些端口,并设置了一些环境变量。 第一部分还定义了可以引用容器和规范的标签和名称。

然后,第二部分定义容器作为 Kubernetes NodePort 服务运行。 对于本模块,你无需了解 NodePorts 的所有细节,但你应该知道,此类型的服务会公开一个外部 IP 地址,以便我们可以从群集外部测试服务。

Kubernetes仪表盘部署并运行后端微服务

进入到dev命名空间,使用上面的资源清单文件部署并运行后端微服务
image
访问:
image

posted @ 2024-03-12 15:33  小何同學  阅读(55)  评论(0编辑  收藏  举报