У нас есть кластер k8s с установленными nginx Ingress и Minio.В Minio у меня есть корзина с именем tester
с файлом Hello World index.html
.Я использовал клиент Minio MC, чтобы установить корзину tester
в public.Теперь я могу видеть файл hello world, когда захожу на мой (измененный) URL-адрес minio, например: https://minio.example.com/tester/index.html
.
Моя цель - настроить ресурс Ingress для доступа к общедоступной корзине.Вот мой манифест, чтобы попытаться сделать это, однако я получаю только ошибку 404.,,
ingress.yaml
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: frontend-site
namespace: "default"
labels:
type: "frontend"
awesomeness: "super-mega"
annotations:
kubernetes.io/ingress.class: "nginx"
spec:
rules:
- host: app.example.com
http:
paths:
- path: /tester/
backend:
serviceName: minio-svc
servicePort: 9000
- path: /tester/*
backend:
serviceName: minio-svc
servicePort: 9000
tls:
- hosts:
- app.example.com
secretName: ssl-certs
Я также пытался установить пути с индексным файлом, но безрезультатно:
path: /tester/index.html
path: /tester/index.html/*
У меня есть еще один Ingress, которыйуказывает на Minio в целом, и он отлично работает на URL, как minio.example.com
.У minio есть служба, которая называется minio-svc
на порту 9000.
К сожалению, я до сих пор только получал 404 от моего Ingress.Кто-нибудь еще развертывает статические сайты с Ingress в общедоступной корзине Minio?Что я делаю не так ???
Обновления
Так что я где-то попал.Я добавил аннотацию и установил пути просто /
и /*
.
Вот мой новый конфиг:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: frontend-site
namespace: "default"
labels:
type: "frontend"
awesomeness: "super-mega"
annotations:
nginx.ingress.kubernetes.io/rewrite-target: /tester/index.html
spec:
rules:
- host: app.example.com
http:
paths:
- path: /
backend:
serviceName: minio-svc
servicePort: 9000
- path: /*
backend:
serviceName: minio-svc
servicePort: 9000
tls:
- hosts:
- app.example.com
secretName: ssl-certs
Теперь мне просто отказано в доступе из Minio, хотя корзина общедоступна, и я все еще могу получить доступ из https://minio.example.com/tester/index.html
!?