0

我在 Kind 集群上尝试 Tekton 并成功配置 Tekton Dashboard 以使用 Ingress 规则。但我没有专用域名,以后也不太可能有。此 Tekton 实例将通过另一个 NGINX 在另一个域的子路径上公开。

但是 Tekton Dashboard 似乎不适用于子路径位置。使用 Ingress 公开的 Tekton Dashboardpath: /效果很好,但如果我将其更改为path: /tekton,它就不起作用了。

那么,它是否设计为仅在根路径下工作?不支持在子路径上工作?


PS 我也将使用 Kind 集群进行生产,因为我无法访问 Kubernetes 集群。这是一项小型服务,我们不需要规模,只需要 CI/CD-as-code。而现在似乎所有新的 CI/CD 实现都是为 Kubernetes 设计的。

4

2 回答 2

0

Tekton Dashboard 确实支持在子路径上公开,它会尝试检测要使用的基本 URL 并相应地进行调整。例如,如果您kubectl proxy针对目标集群在本地运行,则可以在以下位置访问仪表板http://localhost:8001/api/v1/namespaces/tekton-pipelines/services/tekton-dashboard:http/proxy/

有关您遇到的问题的更多详细信息将有助于调试,例如仪表板版本?有什么东西在加载吗?入口控制器和配置?浏览器控制台/网络选项卡等中的任何错误。

于 2021-02-08T11:35:16.537 回答
0

您还可以使用以下 Ingress:

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: tekton-dashboard
  namespace: tekton-pipelines
  annotations:
    kubernetes.io/ingress.class: nginx
    nginx.ingress.kubernetes.io/rewrite-target: /$2
    nginx.ingress.kubernetes.io/configuration-snippet: |
      rewrite ^(/[a-z1-9\-]*)$ $1/ redirect;
spec:
  rules:
  - http:
      paths:
        - path: /tekton-dashboard(/|$)(.*)
          pathType: Prefix
          backend:
            service:
              name: tekton-dashboard
              port:
                number: 9097
于 2021-05-21T13:48:33.657 回答