KeyCloak:在 Docker 中部署自定义主题

KeyCloak: Deploy Custom Theme in Docker

我知道如何使用上述两种方式在 Windows 中部署自定义 KeyCloak 主题 here:

  1. 将主题复制粘贴到 themes 目录

  2. 使用存档部署

有人可以在 docker 中建议如何执行此操作吗?

最后,做了下面的方法。将名为 MyTheme 的自定义主题从 windows 复制到 linux 服务器使用 FileZilla 或类似工具。

要列出服务器上 运行 的所有 docker 个实例,请使用以下命令:

docker ps

找到 keycloak 所在的容器 运行 并选择其容器 ID。

现在使用以下命令将自定义主题复制到 themes 文件夹中。:

docker cp /root/MyTheme/. your_keycloak_container_id:/opt/jboss/keycloak/themes/MyTheme

重启服务器。

这就是我所做的:

  1. 创建的 Dockerfile 如下所示

    FROM jboss/keycloak
    
    COPY ./themes/<yourThemeName>/ /opt/jboss/keycloak/themes/<yourThemeName>/
    
  2. 从该文件构建新的docker图像

    docker build -t <yourDockerHubUserName>/keycloak .

  3. 运行这张docker图片

    docker container run --name <someContainerName> -p 8080:8080 -e KEYCLOAK_USER=admin -e KEYCLOAK_PASSWORD=password <yourDockerHubUserName>/keycloak

  4. 登录管理控制台检查新主题是否出现 http://localhost:8080/auth 并转到 realms/themes 单击主题下拉列表,您应该会看到 <yourThemeName>

迄今为止最好的方法是将主题打包到一个 .jar 文件中并将其拖放到此处:$KEYCLOAK_HOME\standalone\deployments.
Here 你有一个实现这种方法的插件。
您也可以使用 keycloakify,它会为您捆绑主题。