Hi,

I'm trying to run pgadmin in a Kubernetes cluster with the following setup:
                   +-------+
                   | Vouch |
                   | Proxy |
                   +-^---+-+
                     |   |
                     |   |
+---------+        +-+---v---+      +-----------+
| Browser +--------> Reverse +------> /pgadmin4 |
|         |        | Proxy   |      |           |
+---------+        +---------+      +-----------+
pgadmin runs in a container at endpoint /pgadmin4 behind a reverse proxy
using nginx (version 1.21.1). Proxy header X-Forwarded-* are set as follows:
1. X-Forwarded-For: $proxy_add_x_forwarded_for
2. X-Forwarded-Proto: https
3. X-Forwarded-Host: dev.<...>.com
4. X-Forwarded-Port: 443
5. X-Forwarded-Prefix: /pgadmin4
6. X-Script-Name: /pgadmin4

Vouch Proxy (version 0.32.0) checks client credentials via a configured IDP.

pgadmin itself is only configured with PGADMIN_DEFAULT_EMAIL and
PGADMIN_DEFAULT_PASSWORD and runs using port 80, which is also used in
nginx proxy configuration.

After successful login I only see the progress indicator (see attachment).
Looking at browser developer tools I see that besides 200 status responses
there are a lot of 302 responses too, e.g., 302 GET dev.<...>.com
/pgadmin4/browser

Creating a port-forward in Kubernetes towards the /pgadmin4 container works
right away.

I tried to modify the pgadmin environment according to
https://www.pgadmin.org/docs/pgadmin4/latest/container_deployment.html#pgadmin-x-forwarded-configuration
by setting all values to "1". But it did not work. Furthermore, I don't
understand the purpose and possible configuration setups.

What can I do?

Thanks in advance
Jörg Liebig

Reply via email to