Diferencia entre revisiones de «Keycloak»

De Wiki Castanedo.es
Ir a la navegación Ir a la búsqueda
Sin resumen de edición
Sin resumen de edición
Línea 1: Línea 1:
== Instalación Keycloak en Docker ==
== Instalación Keycloak en Docker ==
Instalación de [https://hub.docker.com/hardened-images/catalog/dhi/keycloak dhi.io/keycloak] en Docker.
Instalación de [https://hub.docker.com/hardened-images/catalog/dhi/keycloak dhi.io/keycloak] en Docker.
Vamos a usar una imagen "Docker Hardened Image" (imágenes seguras, mínimas y listas para producción).


== Requisitos ==
== Requisitos ==
Línea 9: Línea 10:
** Módulo: Docker Compose (para PRO)
** Módulo: Docker Compose (para PRO)
* Nginx (ver [[LEMP]])
* Nginx (ver [[LEMP]])
* Cuenta en Docker Hub
** Necesario para acceder a Docker Hardened Image.


== Entorno de DEV ==
== Entorno de DEV ==
Como entorno de DEV se va a usar Docker Desktop.
Como entorno de DEV se va a usar Docker Desktop.
=== Login en catálogo DHI ===
<syntaxhighlight lang="Bash">docker login dhi.io</syntaxhighlight>


=== Descargar imagen ===
=== Descargar imagen ===
<syntaxhighlight lang="Bash">docker pull vegardit/openldap:2.6.10</syntaxhighlight>
Vamos a usar la imagen que es la latest a día de hoy (26).
<syntaxhighlight lang="Bash">docker pull dhi.io/keycloak:26</syntaxhighlight>
 
=== Certificados SSL ===
Para poder arrancar la Keycloak hace falta tener certificados SSL/TLS.
'''Nota''': en DEV usaremos auto-firmados y en PRO de Let's Encrypt.


=== Ejecutar contenedor en Docker Desktop (DEV) ===
=== Ejecutar contenedor en Docker Desktop (DEV) ===

Revisión del 20:48 22 mar 2026

Instalación Keycloak en Docker

Instalación de dhi.io/keycloak en Docker. Vamos a usar una imagen "Docker Hardened Image" (imágenes seguras, mínimas y listas para producción).

Requisitos

Para poder realizar esta configuración se necesita:

  • Servidor GNU Linux (ver Securizar Ubuntu Server)
    • Cortafuegos FirewallD (UFW tiene problemas con Docker)
  • Docker Engine (ver Docker Engine)
    • Módulo: Docker Compose (para PRO)
  • Nginx (ver LEMP)
  • Cuenta en Docker Hub
    • Necesario para acceder a Docker Hardened Image.

Entorno de DEV

Como entorno de DEV se va a usar Docker Desktop.

Login en catálogo DHI

docker login dhi.io

Descargar imagen

Vamos a usar la imagen que es la latest a día de hoy (26).

docker pull dhi.io/keycloak:26

Certificados SSL

Para poder arrancar la Keycloak hace falta tener certificados SSL/TLS. Nota: en DEV usaremos auto-firmados y en PRO de Let's Encrypt.

Ejecutar contenedor en Docker Desktop (DEV)

Pruebas

Entorno de PRO

En el entorno de PRO se va a desplegar transformando la configuración de Docker Desktop en fichero YAML de Docker Composer.

Configurar Virtual Host para Keycloak

  • Añadir Virtual Host:
sudo -i
vi /etc/nginx/sites-available/entrar.culturetas.net
  • Crear carpeta para VirtualHost:
mkdir /var/www/entrar.culturetas.net
  • Activar Virtual Host:
ln -s /etc/nginx/sites-available/entrar.culturetas.net /etc/nginx/sites-enabled/entrar.culturetas.net
systemctl reload nginx

Generar certificados Let's Encrypt

certbot --nginx

Habilitar LDAPS en FirewallD

Crear carpetas para Keycloak

mkdir -p /opt/keycloak/data

Generar fichero YAML

vi /opt/keycloak/compose.yaml

Arrancar OpenLDAP (manual)

cd /opt/keycloak
docker compose up -d

Parar OpenLDAP (manual)

cd /opt/keycloak
docker compose down

Arrancar OpenLDAP (con SystemD)

  • Crear fichero SystemD
vi /etc/systemd/system/keycloak.service
  • Arrancar y habilitar
systemctl daemon-reload
systemctl start keycloak
systemctl enabled keycloak

Referencias