4.3. 在 JBoss EAP 中配置用户开发的层
除了红帽提供的调配层外,您还可以配置您开发的自定义层。
流程
使用 Galleon Maven 插件构建自定义层。
- 将自定义层部署到可访问的 Maven 存储库。
创建自定义调配文件,以引用用户定义的层并支持的 JBoss EAP 层,并将它存储在您的应用目录中。
运行 S2I 流程以在 OpenShift 中调配 JBoss EAP 服务器。
如需更多信息,请参阅 使用用户开发的层构建应用程序配置。
4.3.1. 为 JBoss EAP 构建自定义层
创建自定义层功能包作为 Maven 项目。
- 自定义层至少依赖于一个基础层。选择为您的自定义层提供所需功能的基础层。
在 Maven 项目中,在
src/main/resources
目录中创建您的层内容。例如,要在
src/main/resources
目录中创建层来调配对 PostgreSQL 和 PostgreSQL 数据源的支持,以创建 tier/standalone
子目录。单机
子目录包含以下内容:postgresql-driver
此目录包含包含以下内容的
layer-spec.xml
文件:<?xml version="1.0" ?> <layer-spec xmlns="urn:jboss:galleon:layer-spec:1.0" name="postgresql-driver"> <feature spec="subsystem.datasources"> <feature spec="subsystem.datasources.jdbc-driver"> <param name="driver-name" value="postgresql"/> <param name="jdbc-driver" value="postgresql"/> <param name="driver-xa-datasource-class-name" value="org.postgresql.xa.PGXADataSource"/> <param name="driver-module-name" value="org.postgresql.jdbc"/> </feature> </feature> <packages> <package name="org.postgresql.jdbc"/> </packages> </layer-spec>
postgresql-datasource
此目录包含包含以下内容的
layer-spec.xml
文件:<?xml version="1.0" ?> <layer-spec xmlns="urn:jboss:galleon:layer-spec:1.0" name="postgresql-datasource"> <dependencies> <layer name="postgresql-driver"/> </dependencies> <feature spec="subsystem.datasources.data-source"> <param name="use-ccm" value="true"/> <param name="data-source" value="PostgreSQLDS"/> <param name="enabled" value="true"/> <param name="use-java-context" value="true"/> <param name="jndi-name" value="java:jboss/datasources/${env.POSTGRESQL_DATASOURCE,env.OPENSHIFT_POSTGRESQL_DATASOURCE:PostgreSQLDS}"/> <param name="connection-url" value="jdbc:postgresql://${env.POSTGRESQL_SERVICE_HOST,\ env.OPENSHIFT_POSTGRESQL_DB_HOST}:${env.POSTGRESQL_SERVICE_PORT,\ env.OPENSHIFT_POSTGRESQL_DB_PORT}/${env.POSTGRESQL_DATABASE, env.OPENSHIFT_POSTGRESQL_DB_NAME}"/> <param name="driver-name" value="postgresql"/> <param name="user-name" value="${env.POSTGRESQL_USER, env.OPENSHIFT_POSTGRESQL_DB_USERNAME}"/> <param name="password" value="${env.POSTGRESQL_PASSWORD, env.OPENSHIFT_POSTGRESQL_DB_PASSWORD}"/> <param name="check-valid-connection-sql" value="SELECT 1"/> <param name="background-validation" value="true"/> <param name="background-validation-millis" value="60000"/> <param name="flush-strategy" value="IdleConnections"/> <param name="statistics-enabled" value="${wildfly.datasources.statistics-enabled:${wildfly.statistics-enabled:false}}" /> </feature>
在用于构建自定义功能包的
pom.xml
文件中,请参阅 JBoss EAP 依赖项。<dependency> <groupId>org.jboss.eap</groupId> <artifactId>wildfly-ee-galleon-pack</artifactId>1 <version>7.3.0.GA-redhat-00004</version> <type>zip</type> </dependency>
- 1
- 使用 JBoss EAP 扩展包(JBoss EAP XP)时,此元素的值应当是
wildfly-galleon-pack
。
Red Hat Maven 存储库中提供了这些依赖项:https://maven.repository.redhat.com/ga/
-
使用 Galleon Maven 插件中的
build-user-feature-pack
目标来构建自定义层。
其它资源