1

我也将此问题提交给 Keycloak 邮件列表。

也许我还没有完全掌握 OpenShift 背后的概念。我想在 OpenShift 云中运行我的应用程序并使用 Keycloak 保护它。我的应用程序已经在运行,使用 2 个齿轮。1 档在 WildFly 10 中运行网络应用程序,2 档托管 PostgreSQL 数据库。

我尝试通过使用https://github.com/keycloak/openshift-keycloak-cartridge向我的应用程序添加一个墨盒来添加 Keycloak :

rhc add-cartridge http://cartreflect-claytondev.rhcloud.com/github/keycloak/openshift-keycloak-cartridge

这会导致以下错误:

The cartridge 'http://cartreflect-claytondev.rhcloud.com/github/keycloak/openshift-keycloak-cartridge' will be downloaded and installed
Adding http://cartreflect-claytondev.rhcloud.com/github/keycloak/openshift-keycloak-cartridge to application ‘my_app' ... jboss-wildfly-10 already exists in your application

对我来说,在 WildFly 的一个齿轮上运行我的应用程序并在第二个齿轮上运行 Keycloak(也在 WildFly 上)似乎是合乎逻辑的。将 Keycloak 添加到现有 OpenShift 应用程序(也在 WildFly 上运行)的最佳做法是什么?我应该在同一个 WildFly 实例中部署 Keycloak 吗?

如果我无法在同一个应用程序中部署两个基于相同“基本模块”的模块,OpenShift 如何扩展我的应用程序?那不是一样的吗?

4

1 回答 1

1

在 OpenShift 上,您创建的每个应用程序只能具有一 (1) 个满足“web_framework”类别的盒式磁带,目前对您来说是 WildFly。当您尝试安装 keycloak 墨盒时,它也是一个 web_framework 墨盒(https://github.com/keycloak/openshift-keycloak-cartridge/blob/master/metadata/manifest.yml),您可以在“类别”下看到”。

当应用程序扩展时,它会添加更多的齿轮,然后每个齿轮都会获得它自己的安装在其上的 web_framework 墨盒的副本。

您可以在此处了解有关墨盒如何工作的更多信息:https ://docs.openshift.org/origin-m4/oo_cartridge_developers_guide.html

如果你想使用 Keycloak,你应该把它安装到它自己的设备上(就像你设置 Wildfly 一样)。

于 2016-03-10T22:06:36.980 回答