一、问题描述
keycloak截止目前已更新到23.0.7版本,好多网上关于keycloak教程都停留在15版本之前,有一些地方版本变化较大,计划写一个系列来记录keycloak使用。本文主要记录keycloak启动及打开调试日志的方法。
本文keycloak实验版本为23.0.7
二、问题解决
1、本机启动keycloak
a、下载keycloak
无需魔法就能访问keycloak官网 downloads - Keycloak 进入页面后点击链接下载
b、本地硬盘启动keycloak
下载后解压文件如下
命令行进入bin目录,执行 kc.bat start-dev
如上图即启动成功,默认端口为8080,因为和服务应用冲突,我改成了8082,修改方法是在conf/keycloak.conf 文件中加入http-port=8082。此修改端口的方法与网上旧版本也不同,因为新版本的目录结构都变了
c、访问keycloak及简单解释
http://127.0.0.1:8082 这是我本机启动后keycloak访问地址,初次登录需要设置admin的密码,设置好后登录界面如下
2、docker启动keycloak
官网教程中除了docker启动,还提供了podman、kubernetes、openshift等方式,本问指解释docker启动
docker run -p 8080:8080 -e KEYCLOAK_ADMIN=admin -e KEYCLOAK_ADMIN_PASSWORD=admin quay.io/keycloak/keycloak:23.0.7 start-dev
命令行参数中,包括了端口映射、管理员初始密码、镜像版本等配置。
3、本机启动keycloak打开调试日志
在调试keycloak过程中,客户端返回的日志不全,所以需要查看keycloak的日志,keycloak使用Jboss日志配置,在 {keycloak}/conf/keycloak.conf 配置文件中,加入
log=console,file
log-level=DEBUG
两行配置,log=console,file 代表日志打印在控制台和文件中。log-level=DEBUG代表日志级别为DEBUG,日志级别顺序为ALL>TRACE>DEBUG>INFO>WARN>ERROR>FATAL>OFF。默认级别为INFO,日常调试,开DEBUG就可以了。
配置后,打开控制台 kc.bat start-dev 看到控制台打印了好多日志,一屏根本放不下。日志文件自动存储在了 {keycloak}/data/log文件夹下
至此,完成keycloak启动、日志配置。后续内容有
1、keycloak管理界面汉化
2、keycloak 鉴权 quarkus
3、keycloak 鉴权 springboot
4、keycloak 连接本地数据库(PG)
5、通过调用API实现本地服务用户与keycloak用户体系同步
6、通过本地服务连接keycloak数据库,直接操作数据库本地服务与keycloak用户同步
7、keycloak登录页样式主题修改