Puncte:0

Keycloak containerizat din spatele solicitărilor de proxy inversă Nginx localhost

drapel us

Configurare de lucru

Am o configurație de

  • VPS extern cu IP public care are proxy invers Nginx (A)
  • server intern cu Nginx (B)
  • aplicație autonomă (necontainerized) Keycloak 17.0.1

Care arată așa. Am avut un domeniu înregistrat pentru acel server care este (să spunem) auth.example.com

Cand merg la https://auth.example.com Pot să văd pagina obișnuită cu keycloak cu link către consola de administrare.

introduceți descrierea imaginii aici

Făcând clic pe consola de administrare, mă pot autentifica corect pentru a gestiona domeniul principal.

introduceți descrierea imaginii aici

Problema

De îndată ce containerizez keycloak toate linkurile pentru consola de administrare și unele scripturi nu mai funcționează, deoarece sunt modificate din https://auth.example.com la https://localhost

introduceți descrierea imaginii aici

Configurații

Prin containerizarea keycloak nu am modificat niciuna dintre configurațiile nginx.

Nginx A

        Locație /
        {
                proxy_set_header Gazdă $gazdă;
                proxy_set_header X-Real-IP $adresă_la distanță;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header X-Forwarded-Host $gazdă;
                proxy_set_header X-Forwarded-Server $gazdă;
                proxy_set_header X-Forwarded-Port $server_port;
                proxy_set_header X-Forwarded-Proto $schema;
                proxy_pass http://[nginx b ip];
        }

Nginx B

Server
{
        nume_server auth.example.com;
        Locație /
        {
            proxy_pass http://localhost:[port docker expus];
        }
        asculta 80;
}

Keycloak autonom (comandă de lucru)

/usr/bin/bash bin/kc.sh start --proxy edge --hostname=auth.example.com --db-url-host localhost --db-username keycloak --db-password parola

Keycloak dockerizat (docker-compose)

  mantaua cheii:
    imagine: quay.io/keycloak/keycloak:latest
    comandă: start --auto-build --features=token-change --hostname-strict-backchannel=true --hostname=auth.example.com
    depinde de:
      - db
    mediu inconjurator:
      KC_METRICS_ENABLED: „adevărat”
      DB_VENDOR: [somedbvendor]
      DB_ADDR: db
      DB_DATABASE: keycloak
      DB_USER: keycloak
      DB_PASSWORD: parola
      KEYCLOAK_ADMIN: administrator
      KEYCLOAK_ADMIN_PASSWORD: administrator
      KC_PROXY: margine
      PROXY_ADDRESS_FORWARDING: „adevărat”
    porturi:
      - „8081:8080”
    retele:
      - net

Aș dori să containerizez întreaga aplicație pe care o am și dependențele lor și keycloak este un prim pas pe care nu îl pot finaliza.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.