我怎么能要设置上启用的数据源=“真” standalone.xml
像下面Openshift V3 Wildfly容器。
<datasource jndi-name="java:jboss/datasources/MySQLDS" enabled="true" use-java-context="true" pool-name="MySQLDS" use-ccm="true">
我把OPENSHIFT_MYSQL_ENABLED
环境变量设置为“真”,但没有happended。
答案参考网站是以下网址:
https://developer.jboss.org/wiki/DataserviceBuilderOnOpenShiftV3Online
我正在处理同样的问题:环境变量OPENSHIFT_MYSQL_ENABLED
是由变量替换过程中忽略了,所以我不得不用我的双手来激活数据源,这就是我所做的:(我会假设你有OC您的系统上安装的工具)
- 登录到OC:
oc login
- 列出所有吊舱和找到WildFly实例:
oc get pods
- 进入容器的SSH控制台:
oc rsh <<pod-name>>
- 编辑
standalone.xml
文件vi /wildfly/standalone/configuration/standalone.xml
- 通过键入搜索词“数据源”
/datasource
上vi编辑器,然后按enter - 找到你的数据源的“已启用”属性和更新其价值
false
到true
(这样做,按i
去vi的插入模式) - 按保存文件
esc
然后:x
我使用OpenShift社区版,所以要重新启动容器始终是一个麻烦:它需要很长的时间才能找到可用的(如内存和CPU)资源并重新启动服务器,但是,你不会有你的数据源启用,除非你重新启动服务器。 在这方面,要做到这一点,你不需要重启容器,只需重新加载WildFly使用jboss-cli.sh
命令行工具。 (我没有尝试杀死进程,并再次启动它,所以如果你没有尝试,请评论,如果它的工作)。 下面的步骤应使用容器的终端上执行oc rsh <<podname>>
或者使用Web控制台上的终端。
- 使用命令输入的jboss-CLI
/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>>
- 通过输入重新加载WildFly
reload
命令。 一旦WildFly重新启动你需要再次访问jboss-cli.sh并登录到控制台。 - 测试使用命令数据源连接
data-source test-connection-in-pool --name=<<YOUR_DATASOURCE_NAME>>
。 如果该命令的输出是true
数据源是启动和运行。
Openshift V3是基于泊坞窗容器,所以我怕如果你重新启动容器,这样的配置可能会丢失。 最挪用的解决办法是包括码头工人的剧本这个行动,我不知道它是如何与Openshift平台一起工作。
希望能帮助到你!