Keycloak服务器运行后自动运行命令

时间:2019-02-18 20:17:21

标签: keycloak

我目前正在开发一个应用程序,其中使用keycloak连接到ldap服务器。一旦服务器启动并运行,我就有一些特定的命令要运行。例如,我要运行以下

./kcadm.sh config credentials --server http://localhost:8080/auth --realm master --user admin --password password
./kcadm.sh update realms/master -s sslRequired=NONE

由于我尚未在虚拟机上安装https,因此该程序仍在运行。

我正在通过Dockerfile构建密钥斗篷,但是我发现我不能只用Docker运行上述命令,因为在我的Dockerfile完成运行时服务器还没有启动。

是否有什么方法可以知道我的keycloak服务器何时启动并运行,以便我可以自动执行上述命令以便随后运行?另外,可以将上述命令添加到standalone.xml文件或类似文件中,这样我什至不必担心这个问题? (请注意,我也想运行其他命令,因此,如果可以通过standalone.xml进行操作,则对它的工作方式进行一些小的解释可能会有所帮助)。

1 个答案:

答案 0 :(得分:0)

您可以从RUN创建初始化脚本和Dockerfile, 初始化脚本,该脚本启动密钥斗篷,然后对其进行配置。

我们使用以下查询循环检查了密钥斗篷的状态。

$ kcadm.sh config credentials --server http://localhost:8080/auth --realm master --user testuser --password testpass

我们在启动密钥隐藏之前使用add-user-keycloak.sh设置了测试用户,并在最后将其删除。