Configuración de trabajo

Configuración de trabajo

Configuración de trabajo

tengo una configuracion de

  • VPS externo con IP pública que tiene proxy inverso Nginx (A)
  • servidor interno con Nginx (B)
  • Aplicación independiente (no en contenedores) Keycloak 17.0.1

Que se parece a esto. Tenía un dominio registrado para ese servidor que es (digamos)autenticación.ejemplo.com

Cuando voy ahttps://auth.example.comPuedo ver la página normal de capa de claves con un enlace a la consola de administración.

ingrese la descripción de la imagen aquí

Al hacer clic en la consola de administración, puedo iniciar sesión correctamente para administrar el dominio maestro.

ingrese la descripción de la imagen aquí

El problema

Tan pronto como incluyo en un contenedor la capa de claves, todos los enlaces para la consola de administración y algunos scripts ya no funcionan porque se cambiaron de https://auth.example.comahttps://localhost

ingrese la descripción de la imagen aquí

Configuraciones

Al contener keycloak, no modifiqué ninguna de las configuraciones de nginx.

Nginx-A

        location /
        {
                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-Host $host;
                proxy_set_header X-Forwarded-Server $host;
                proxy_set_header X-Forwarded-Port $server_port;
                proxy_set_header X-Forwarded-Proto $scheme;
                proxy_pass http://[nginx b ip];
        }

NginxB

server
{
        server_name auth.example.com;
        location /
        {
            proxy_pass http://localhost:[exposed docker port];
        }
        listen 80;
}

Capa de teclas independiente (comando de trabajo)

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

Capa de claves dockerizada (docker-compose)

  keycloak:
    image: quay.io/keycloak/keycloak:latest
    command: start --auto-build --features=token-exchange --hostname-strict-backchannel=true --hostname=auth.example.com
    depends_on:
      - db
    environment:
      KC_METRICS_ENABLED: "true"
      DB_VENDOR: [somedbvendor]
      DB_ADDR: db
      DB_DATABASE: keycloak
      DB_USER: keycloak
      DB_PASSWORD: password
      KEYCLOAK_ADMIN: admin
      KEYCLOAK_ADMIN_PASSWORD: admin
      KC_PROXY: edge
      PROXY_ADDRESS_FORWARDING: "true"
    ports:
      - "8081:8080"
    networks:
      - net

Me gustaría incluir en contenedores toda la aplicación que tengo y sus dependencias, y la capa de claves es un primer paso que no puedo completar.

información relacionada