fix(admin-ui/nginx): proxy /admin/* и /swagger-ui|v3/api-docs на writer

После добавления audit/outbox admin endpoints + Swagger UI они оказались за
SPA-fallback'ом — nginx отдавал index.html вместо проксирования на writer.

- /api/v1/admin/* (AuditAdminController + OutboxAdminController) → writer.
- /swagger-ui*, /v3/api-docs*, /swagger-resources, /webjars/swagger-ui →
  writer (там springdoc сидит).
This commit is contained in:
Zimin A.N.
2026-05-04 15:54:43 +03:00
parent 930df5b888
commit 5ffb51e119
+24
View File
@@ -29,6 +29,30 @@ server {
proxy_pass_request_headers on;
}
# /api/v1/admin/* — audit + outbox admin endpoints на writer.
location ~ ^/api/v1/admin/ {
set $backend "ordinis-app.${ORDINIS_NAMESPACE}.svc.${CLUSTER_DOMAIN}";
proxy_pass http://$backend$request_uri;
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass_request_headers on;
}
# Swagger UI + OpenAPI spec на writer (там обвязаны контроллеры).
location ~ ^/(swagger-ui|v3/api-docs|swagger-resources|webjars/swagger-ui) {
set $backend "ordinis-app.${ORDINIS_NAMESPACE}.svc.${CLUSTER_DOMAIN}";
proxy_pass http://$backend$request_uri;
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass_request_headers on;
}
# GET → read-api, мутирующие → writer.
# FQDN в proxy_pass нужен потому что nginx resolver не использует search list.
# Namespace и cluster-domain инжектятся через ENV (см. admin-ui Deployment).