首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >拥有前端服务的Kubernetes

拥有前端服务的Kubernetes
EN

Stack Overflow用户
提问于 2022-07-26 15:29:39
回答 1查看 55关注 0票数 0

我正在尝试将我的.net核心web应用程序放到k8s中。

我有两个前端应用程序,即:

  • Authentication (8月)服务(使用.net 3.1 identityserver4)。Auth服务允许用户对自己和成功进行身份验证,Auth服务将使用JWT令牌
  • web服务(使用.net 5)重定向到Web服务。一旦用户身份验证成功,Web服务将接收JWT令牌并创建会话cookie.

在Docker中部署时,这两个服务都使用不同的端口运行,并使用Nginx反向代理,这两个服务都包含根路径等。

代码语言:javascript
复制
server {
 listen 44343
 location /
  {redirect to Auth Service}
}

server {
  listen 44345
  location /
   {redirect to Web Service}
}

但在k8s,我似乎不能这样做。因此,任何善良的灵魂指引我,什么是正确的设置入口或尼克斯?

EN

回答 1

Stack Overflow用户

发布于 2022-07-26 16:26:16

您可以为每个端口和一个入口创建两个服务:

authsvc.yaml

代码语言:javascript
复制
apiVersion: v1
kind: Service
metadata:
  name: auth-service
spec:
  type: NodePort
  selector:
    component: web
  ports:
    - port: 44343
      targetPort: x (i guess this could be your port 80/443 because is the "entry")

webservicesvc.yaml

代码语言:javascript
复制
apiVersion: v1
kind: Service
metadata:
  name: web-service
spec:
  type: NodePort
  selector:
    component: web
  ports:
    - port: 44345
      targetPort: x

ingress.yaml

代码语言:javascript
复制
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: ingress
  annotations:
    nginx.ingress.kubernetes.io/rewrite-target: /
spec:
  rules:
  - http:
      paths:
      - path: /
        pathType: Prefix
        backend:
          service:
            name: auth-service
            port:
              number: 44343
      - path: /
        pathType: Prefix
        backend:
          service:
            name: web-service
            port:
              number: 44345

/意味着所有路径也可以有不同的入口类型,如TLS。看看:https://www.yogihosting.com/kubernetes-ingress-aspnet-core/

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73126118

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档