1.5. 优化 Red Hat build of Keycloak 启动


我们建议优化红帽构建的 Keycloak,以便在生产环境中部署红帽构建的 Keycloak 前更快地提供启动和更好的内存消耗。本节论述了如何应用红帽构建的 Keycloak 优化,以获得最佳性能和运行时行为。

1.5.1. 创建优化的红帽构建的 Keycloak 构建

默认情况下,当您使用 startstart-dev 命令时,红帽构建的 Keycloak 会根据覆盖运行 build 命令。

构建 命令为启动和运行时行为执行一组优化。构建过程可能需要几秒钟。特别是在容器化环境中运行红帽构建的 Keycloak (如 Kubernetes 或 OpenShift)时,启动时间非常重要。为避免丢失这一时间,请在启动前明确 运行构建,如 CI/CD 管道中的独立步骤。

1.5.1.1. 第一步:明确运行构建

要运行 构建,请输入以下命令:

bin/kc.[sh|bat] build <build-options>
Copy to Clipboard Toggle word wrap

此命令显示 您输入的构建选项。Red Hat build of Keycloak 可区分运行 build 命令时可以使用的构建选项,这些选项 在启动服务器时可用。

对于红帽构建的 Keycloak 的非优化启动,这种区别没有影响。但是,如果您在启动前运行构建,则 build 命令只能使用一组选项。限制的原因是构建选项被保留至优化的红帽构建的 Keycloak 镜像。例如,出于安全原因,必须保留 db-password (即配置选项)等凭据的配置。

警告

所有构建选项都以纯文本形式保留。不要将任何敏感数据存储为构建选项。这适用于所有可用的配置源,包括 KeyStore 配置源。因此,我们不推荐将任何构建选项存储在 Java 密钥存储中。另外,当涉及配置选项时,我们建议使用 KeyStore 配置源来存储敏感数据。对于非敏感数据,您可以使用剩余的配置源。

构建选项会在 All configuration with a tool icon 中标记。要查找可用的构建选项,请输入以下命令:

bin/kc.[sh|bat] build --help
Copy to Clipboard Toggle word wrap

示例: 运行构建 以在启动前将数据库设置为 PostgreSQL

bin/kc.[sh|bat] build --db=postgres
Copy to Clipboard Toggle word wrap

成功构建后,您可以启动红帽构建的 Keycloak,并输入以下命令关闭默认启动行为:

bin/kc.[sh|bat] start --optimized <configuration-options>
Copy to Clipboard Toggle word wrap

- optimized 参数告知红帽构建 Keycloak,以假定使用预建的、已优化的红帽构建的 Keycloak 镜像。因此,红帽构建的 Keycloak 可以避免在启动时直接检查并运行构建,这可以节省时间。

您可以在启动时输入所有配置选项;这些选项是所有配置中 没有通过 工具图标标记的选项。???

  • 如果在启动时找到构建选项,其值等于输入 构建 时使用的值,则在使用- optimized 参数时,该选项会 静默忽略。
  • 如果该选项的值与输入构建时使用的值不同,日志中会出现警告,并使用之前构建的值。要使这个值生效,请在启动前运行 新构建

创建优化的构建

以下示例显示了创建优化的构建,并在启动红帽构建的 Keycloak 时使用- optimized 参数。

  1. 使用 build 命令为 PostgreSQL 数据库厂商设置构建选项

    bin/kc.[sh|bat] build --db=postgres
    Copy to Clipboard Toggle word wrap
  2. conf/keycloak.conf 文件中为 postgres 设置运行时配置选项。

    db-url-host=keycloak-postgres
    db-username=keycloak
    db-password=change_me
    hostname=mykeycloak.acme.com
    https-certificate-file
    Copy to Clipboard Toggle word wrap
  3. 使用优化参数启动服务器

    bin/kc.[sh|bat] start --optimized
    Copy to Clipboard Toggle word wrap

您可以使用 build 命令实现大多数启动和运行时行为的优化。另外,通过将 keycloak.conf 文件用作配置源,您可以避免一些启动时需要命令行参数的步骤,如初始化 CLI 本身。因此,服务器启动速度更快。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat