Установка Keycloak

Материал из megapuper
Перейти к: навигация, поиск

Установка Keycloak на Oracle Linux 8.5


Первым шагом ставим Java

yum install java-17-openjdk.x86_64


Скачиваем установщик https://www.keycloak.org/downloads и распаковываем его в /opt/keycloak


Добавляем пользователя и группу

groupadd -r keycloak
useradd -m -d /var/lib/keycloak -s /sbin/nologin -r -g keycloak keycloak


Выставляем права

chwon -R keycloak: /opt/keycloak
chmod 744 /opt/keycloak/bin/kc.sh


Скачиваем модуль для работы java приложения с базой PostgresSQL https://jdbc.postgresql.org/download.html

Далее кладём его в папку /opt/keycloak/providers, тут не понятно - не стартует, надо проверить, до кучи кидаем в /opt/drivers


Производим установку PostgreSQL

dnf install https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
dnf module disable postgresql
dnf install postgresql13-server postgresql13
/usr/pgsql-13/bin/postgresql-13-setup initdb
systemctl enable postgresql-13
systemctl start postgresql-13


Подключаемся к PostgreSQL и создаём пользователя и базу

su - postgres
psql
create user keycloak with password 'pKrQR8X3PZVYBEjyPrL6';
create database keycloak owner keycloak;
grant all privileges on database keycloak to keycloak;


Редактируем конфиг /var/lib/pgsql/13/data/pg_hba.conf

host    all             all             127.0.0.1/32            trust


Рестартим PostgreSQL

systemctl restart postgresql-13


Запускаем сборку /opt/keycloak/bin/kc.sh build


Правим конфиг внося нужные изменения /opt/keycloak/conf/keycloak.conf

# The database vendor.
db=postgres

# The username of the database user.
db-username=keycloak

# The password of the database user.
db-password=pKrQR8X3PZVYBEjyPrL6

# The full database JDBC URL. If not provided, a default URL is set based on the selected database vendor.
db-url=jdbc:postgresql://localhost/keycloak

# Observability

# If the server should expose metrics and healthcheck endpoints.
metrics-enabled=true

# Hostname for the Keycloak server.
hostname=pd10-030044-vml


Перед первым запуском добавляем в env админа с паролем, при запуске keycloak он перенесётся в базу

export KEYCLOAK_ADMIN=keycloak_admin
export KEYCLOAK_ADMIN_PASSWORD=Ip9oHAFZ5w1Yj21esdE9


Запускаем keycloak

/opt/keycloak/bin/kc.sh -cf conf/keycloak.conf start-dev --http-port 80


Заходим в web-интерфейс и наслаждаемся

http://pd10-030044-vml