如何设置enabled =" true"如下所示,在Openshift v3 Wildfly容器的standalone.xml
数据源上。
<datasource jndi-name="java:jboss/datasources/MySQLDS" enabled="true" use-java-context="true" pool-name="MySQLDS" use-ccm="true">
我将OPENSHIFT_MYSQL_ENABLED
环境变量放到&#34; true&#34;但没有任何事情发生。
答案参考网站是以下网址:
https://developer.jboss.org/wiki/DataserviceBuilderOnOpenShiftV3Online
答案 0 :(得分:1)
我正在处理同样的问题:变量替换过程忽略了环境变量OPENSHIFT_MYSQL_ENABLED
,所以我不得不用我的双手激活数据源,这就是我所做的:
(我假设您已在系统上安装了OC工具)
oc login
oc get pods
oc rsh <<pod-name>>
standalone.xml
文件vi /wildfly/standalone/configuration/standalone.xml
/datasource
,然后按enter false
更新为true
(为此,请按i
转到vi插入模式)esc
然后按:x
我正在使用OpenShift社区版,所以要重新启动容器总是很麻烦:找到可用的资源(比如内存和CPU)需要很长时间才能再次启动服务器,但是,你不会有除非重新启动服务器,否则启用数据源。在这方面,为此,您不需要重新启动容器,只需使用jboss-cli.sh
命令行工具重新加载WildFly。 (我没有尝试杀死进程并重新启动它,所以如果你尝试过,请评论是否有效)。
应使用oc rsh <<podname>>
或使用Web控制台上的终端在容器终端上执行以下步骤。
/wildfly/bin/jboss-cli.sh
connect
以登录WildFly控制台,系统将提示您输入用户名和密码。如果您没有凭据,请退出此控制台并通过执行脚本/wildfly/bin/add-user.sh
data-source read-resource --name=<<YOUR_DATASOURCE_NAME>> --include-runtime=true --recursive=true
检查数据源属性,然后按“启用”属性进行操作。 data-source enable --name=<<YOUR_DATASOURCE_NAME>>
reload
命令重新加载WildFly。一旦WildFly重新启动,您将需要访问jboss-cli.sh并再次登录控制台。data-source test-connection-in-pool --name=<<YOUR_DATASOURCE_NAME>>
测试您的数据源连接。如果命令输出为true
,则表明您的数据源已启动并正在运行。Openshift v3基于docker容器,因此我担心如果你重新启动容器,这个配置可能会丢失。最合适的解决方案是将此操作包含在docker的脚本中,我不知道它与Openshift平台一起如何工作。
希望它有所帮助!