Keycloak服务搭建(keycloak部署)
安装方式
Keycloak官网地址是
https://www.keycloak.org/guides,支持下载压缩包后本地安装、使用Docker安装以及在Kubernetes上运行
Docker方式安装
这里直接使用docker compose来运行Keycloak服务,运行的Keycloak服务版本为16.0.0。yaml如下:
version: '3'
services:
keycloak:
image: jboss/keycloak:16.0.0
container_name: keycloak_default
restart: always
environment:
KEYCLOAK_USER: admin
KEYCLOAK_PASSWORD: admin
ports:
- 8180:8080
说明
- 以上方式运行的Keycloak服务,使用的是内存数据库H2,在Keycloak服务中配置的信息在服务重启后会丢失
- 将容器中Keycloak使用的8080端口映射到本地的8180端口
- 指定了Keycloak服务的管理员账号和密码为admin/admin
- 使用http://localhost:8180/auth/访问
还可以在yaml中指定Keycloak服务使用的数据库,yaml如下:
version: '3'
services:
mysql:
image: mysql:5.7
volumes:
- /home/data/keycloak/mysql/data:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=root
- MYSQL_DATABASE=keycloak
- MYSQL_USER=keycloak
- MYSQL_PASSWORD=123456
ports:
- 33060:3306
keycloak:
image: jboss/keycloak:16.0.0
environment:
- KEYCLOAK_USER=admin
- KEYCLOAK_PASSWORD=admin
- DB_VENDOR=mysql
- DB_ADDR=mysql
- DB_PORT=3306
- DB_DATABASE=keycloak
- DB_USER=keycloak
- DB_PASSWORD=123456
ports:
- 8180:8080
depends_on:
- mysql
说明
- 以上方式,使用了mysql作为Keycloak的存储,这样即使Keycloak服务重启,之前创建的配置还能保留
- mysql数据库的用户名/密码是keycloak/123456
- Keycloak服务的用户名/密码是admin/admin
- 同样可以使用使用http://localhost:8180/auth/访问Keycloak