У меня есть кластер Azure k8s, в котором я хочу обслуживать две службы: Jenkins и мое собственное приложение узла. У меня есть docker изображений, и они работают правильно. Мне нужно получить доступ к mydomain.com / jenkins и увидеть мой экземпляр Jenkins. То же самое относится к mydomain.com / node и моему приложению node.
Первая проблема, с которой я столкнулся, заключается в том, что я мог видеть страницу html, но, например, css пытался загрузить в mydomain.com/css/style.css, а не в mydomain.com/ узел / css / style. css. Я исправил это с помощью моей текущей конфигурации входа:
apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
annotations:
nginx.ingress.kubernetes.io/rewrite-target: /$2
name: ingress
spec:
rules:
- host: domain.com
http:
paths:
- path: /(jenkins)?/?(.*)
backend:
serviceName: jenkins-service
servicePort: 8080
Это была моя ближайшая попытка. С этой конфигурацией я могу успешно получить доступ к Jenkins. Но если я добавлю другой путь для своего приложения узла, даже когда я получу доступ к mydomain.com / node , он перенаправит меня на Jenkins. Я знаю, что было бы намного проще сделать это с поддоменами, но мне специально сказали сделать это таким образом. Я застрял в этом весь день, поэтому буду благодарен за любую помощь.