【JAVA】Keycloak 安装搭建(一)

目录

官网地址

系统要求


官网地址

https://www.keycloak.org/

下载地址:https://www.keycloak.org/downloads

系统要求

这些是运行 Keycloak 身份验证服务器的要求:

  • 可以在任何运行 Java 的操作系统上运行

  • Java 8 JDK

  • zip 或 gzip 和 tar

  • 至少 512M 的 RAM

  • 至少 1G 的磁盘空间

  • 一个共享的外部数据库,如 PostgreSQL、MySQL、Oracle 等。如果你想在集群中运行,Keycloak 需要一个外部共享数据库。安装步骤

 安装步骤

示例说明:系统采用腾讯云服务器的centos系统,数据库采用MySQL 

  • 将下载好的包上传到服务器解压,我下载的是 keycloak-15.0.2.tar.gz 解压命令
  • tar -zxvf keycloak-15.0.2.tar.gz
  • 下载连接数据库的驱动,我这边用的是mysql 8.0.16所以需要下载驱动包 mysql-connector-java-8.0.26.jar   下载链接:https://search.maven.org/search?q=g:mysql%20AND%20a:mysql-connector-java
  • 下载后,进入刚刚解压的文件夹,进入目录,命令如下
  • cd keycloak-15.0.2/modules/system/layers/keycloak/com
  • 在此目录创建文件夹 mysql/main 
  • mkdir  -p mysql/main
  • 在文件夹main下面创建以下2个文件
  • mysql-connector-java-8.0.26.jar 上传上去即可
  • module.xml 里面的内容如下
  • <?xml version="1.0" encoding="UTF-8"?>
    <module xmlns="urn:jboss:module:1.3" name="com.mysql">
        <resources>
            <resource-root path="mysql-connector-java-8.0.26.jar"/>
        </resources>
        <dependencies>
            <module name="javax.api"/>
            <module name="javax.transaction.api"/>
        </dependencies>
    </module>
    

    修改数据源设置以使用新的JDBC驱动

  • 在自己的mysql数据库中创建数据库

  • CREATE database keycloak DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci ;
    
  • 进入目录 keycloak-15.0.2/standalone/configuration  更改文件standalone.xml

  • 寻找drivers标签,默认有一个h2数据库的配置,我们要在同级增加一个mysql的配置。驱动类查看自己版本的数据库对应的类

  • <driver name="mysql" module="com.mysql">
        <xa-datasource-class>com.mysql.cj.jdbc.MysqlXADataSource</xa-datasource-class>
    </driver>
    

    寻找datasources标签,默认此处有两项datasource,我们注释掉名称为KeycloakDS的数据源,并加上mysql的。注意不要把ExampleDS也注释掉,启动会报错的。

  • <datasource jndi-name="java:jboss/datasources/KeycloakDS" pool-name="KeycloakDS" enabled="true" use-java-context="true">
        <connection-url>jdbc:mysql://localhost:3306/keycloak</connection-url>
        <driver>mysql</driver>
        <pool>
            <max-pool-size>20</max-pool-size>
        </pool>
        <security>
            <user-name>root</user-name>
            <password>123456</password>
        </security>
    </datasource>
    
  • 初始化keycloak管理员用户

  • 进入keycloak-15.0.2/bin目录
  • ./add-user-keycloak.sh -r master -u admin -p admin
  • 启动Keycloak  

  • ./standalone.sh -Djboss.socket.binding.port-offset=100 -Djboss.bind.address=0.0.0.0 -Djboss.bind.address.management=0.0.0.0
    
    后台启动
    nohup   ./standalone.sh -Djboss.socket.binding.port-offset=100 -Djboss.bind.address=0.0.0.0 -Djboss.bind.address.management=0.0.0.0 &
    
    
  • -Djboss.socket.binding.port-offset 在默认端口加100 既原8080 >>8180
  • -Djboss.bind.address  绑定启动服务器IP,默认为127.0.0.1,都是127是只能内部网络能访问,所以得改成 0.0.0.0
  • -Djboss.bind.address.management 绑定启动服务器IP,默认为127.0.0.1,都是127是只能内部网络能访问,所以得改成 0.0.0.0
  • 启动完成后,访问  http://xxxx:8180/auth/

 点击这个,要是跳转页面显示 http required...什么的,在创建的数据库执行语句

update REALM set ssl_required='NONE' where id = 'master';

 

 输入admin/admin即可登录了,需要中文页面的话,可以进行汉化

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天空~华

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值