аннотация, которую я предоставил, заключается в том, что переписать конфигурацию, так что либо так, либо, как вы предлагаете, заставить ваши приложения реагировать на эти пути

аюсь создать кластер в Google Kubernetes Engine, который запускает nginx, сервер RStudio и два приложения Shiny, следуя и адаптируясьэто руководство.

У меня есть 4 рабочих нагрузки, которые все зеленые в пользовательском интерфейсе, развернуты с помощью:

kubectl run nginx --image=nginx --port=80
kubectl run rstudio --image gcr.io/gcer-public/persistent-rstudio:latest --port 8787
kubectl run shiny1 --image gcr.io/gcer-public/shiny-googleauthrdemo:latest --port 3838
kubectl run shiny5 --image=flaviobarros/shiny-wordcloud --port=80

Затем они были выставлены как порты узла через:

kubectl expose deployment nginx --target-port=80  --type=NodePort
kubectl expose deployment rstudio --target-port=8787  --type=NodePort
kubectl expose deployment shiny1 --target-port=3838  --type=NodePort
kubectl expose deployment shiny5 --target-port=80  --type=NodePort

..это все зеленые в интерфейсе.

Затем я развернул этот Ingress бэкэнд

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: r-ingress
spec:
  rules:
  - http:
      paths:
      - path: /
        backend:
          serviceName: nginx
          servicePort: 80
      - path: /rstudio/
        backend:
          serviceName: rstudio
          servicePort: 8787
      - path: /shiny1/
        backend:
          serviceName: shiny1
          servicePort: 3838
      - path: /shiny5/
        backend:
          serviceName: shiny5
          servicePort: 80

В результате маршрутизация nginx работает отлично, я вижу домашнюю страницу «Welcome to nginx», но я получаю три других пути:

/ rstudio / -Input/output error/ блестящая1 / - страница не найдена (страница Shiny 404)/ глянцевая5 / - страница не найдена (страница Shiny 404)

Рабочие нагрузки RStudio и Shiny работают при экспонировании через единый балансировщик нагрузки, сопоставленный с 8787 и 3838 соответственно.

Кто-нибудь может указать, где я иду не так?

Qs:

Нужно ли адаптировать файлы Docker, чтобы все они давали статус 200 на порту 80 при запросе «/»? Нужно ли менять проверку здоровья? Я попытался изменить страницу входа в RStudio (это 302 на / auth-вход, если вы не вошли), но безуспешноИ RStudio, и Shiny нуждаются в веб-сокетах - это влияет на это?Должна ли быть включена сессия сессии? Я попытался добавить это с IP, но те же ошибки.

Ответы на вопрос(2)

Ваш ответ на вопрос