DXP 7.0をJBoss EAP 7.0に導入する。

この記事は、JBoss EAP 7.0上でLiferay Digital Experience Platform (DXP) 7.0をセットアップする方法を説明しています。

JBoss EAP 6.x製品に慣れている管理者や開発者は、JBoss EAP 7.0でもインストール手順がほぼ同じであることに注目するでしょう。 変更点の詳細については、Red Hat の発表 Announcing JBoss EAP 7 および公式 リリースノートを参照してください。

解像度

必要な条件

  1. Oracle JDK 1.8です。
  2. JBoss EAP 7.0 zip バンドルまたはインストーラから抽出された jar Red Hat サイトから入手できます。
  3. Liferay DXP 7.0 Downloads Pageから以下をダウンロードしてください:
    1. DXP 7.0 WAR
    2. 依存関係 ZIP
    3. OSGiの依存関係
    4. データベースジャー(例:MySQL、MariaDB、SQL Server)

インストール

Liferay Home は、JBoss のインストール先の一つ上のフォルダにあります。 Liferay Home は JBoss サーバーフォルダーを含むフォルダーを指し、${JBoss_Home} と短縮されます。 Liferay Digital Enterprise 7.0 を JBoss にインストールした場合、Liferay Home フォルダには JBoss サーバフォルダの他に data, deploy, logs, and osgi フォルダが含まれます。

  1. フォルダの作成 $JBOSS_HOME/modules/com/liferay/portal/main. Liferay Digital Enterprise 7.0 Dependenciesのzipファイルを解凍し、.jarファイルをこのフォルダーにコピーします。
  2. データベース .jar をこのフォルダに配置します。
  3. module.xml$JBOSS_HOME/modules/com/liferay/portal/main フォルダに作成し、以下の内容を挿入します:
    	<?xml version="1.0"?>
    
    	<module name="com.liferay.portal" xmlns="urn:jboss:module:1.0">
        	<resources>
            	<resource-root path="com.liferay.registry.api.jar" />
            	<resource-root path="${database jar}" />
            	<resource-root path="portal-kernel.jar" />
            	<resource-root path="portlet.jar" />
        	</resources>
        	<dependencies>
            	<module name="javax.api" />
            <module name="javax.mail.api" />
            	<module name="javax.servlet.api" />
            	<module name="javax.servlet.jsp.api" />
            	<module name="javax.transaction.api" />
        	</dependencies>
    	</module>
    
  4. Liferay Home フォルダ内に osgi フォルダを作成します。 そして、OSGi ZIPファイルを osgi フォルダに展開します。

次に、 $JBOSS_HOME/standalone/configuration/standalone.xml ファイルを修正します。

  1. ウェブサブシステムの undertow:3.1 の不要な welcome-content を削除し、要素 <location name="/" handler="welcome-content"/>を削除する。 対応する要素を削除する: <handlers> ... </handlers>... そうしないと、アプリサーバーは Liferay Digital Enterprise 7.0 ではなく、このフォルダの内容をロードします。
    JBoss EAP 6.x の Web Server は Undertow に取って代わられたことに注意してください。 Web サーバーアンダートゥの設定をご参照ください。
    	<subsystem xmlns="urn:jboss:domain:undertow:3.1">
                <buffer-cache name="default"/>
                <server name="default-server">
                    <http-listener name="default" socket-binding="http" redirect-socket="https"/>
                    <host name="default-host" alias="localhost">
                        <filter-ref name="server-header"/>
                        <filter-ref name="x-powered-by-header"/>
                    </host>
                </server>
                <servlet-container name="default">
                    <jsp-config/>
                    <websockets/>
                </servlet-container>
                <filters>
                    <response-header name="server-header" header-name="Server" header-value="JBoss-EAP/7"/>
                    <response-header name="x-powered-by-header" header-name="X-Powered-By" header-value="Undertow/1"/>
                </filters>
            </subsystem>
    
  2. <jsp-config/> タグを探し、 development 属性を設定します。 完成すると、このようなタグになります:
           <jsp-config development="true" source-vm="1.8" target-vm="1.8" />
  3. deployment-timeout="240" を設定し、デプロイスキャナーのタイムアウトを追加します:
    	<subsystem xmlns="urn:jboss:domain:deployment-scanner:2.0">
    		<deployment-scanner name="default"
                	path="deployments"
                	scan-enabled="true"
                	scan-interval="5000"
                	relative-to="jboss.server.base.dir"
                	deployment-timeout="240"/>
    	</subsystem>
    
  4. エレメント <subsystem xmlns="urn:jboss:domain:security:1.2">で定義されたセキュリティサブシステム <security-domains> に、次の JAAS セキュリティドメイン を追加します:
    	<security-domain name="PortalRealm">
        	<authentication>
            	<login-module code="com.liferay.portal.security.jaas.PortalLoginModule" flag="required"/>
        	</authentication>
    	</security-domain>
    
  5. </extensions><management> のタグの間に、以下のシステムプロパティを追加します:
    	<system-properties>
    		<property name="org.apache.catalina.connector.URI_ENCODING" value="UTF-8" />
     		<property name="org.apache.catalina.connector.USE_BODY_ENCODING_FOR_QUERY_STRING" value="true" />
    	</system-properties>
    
  6. 変更を保存します。

IBM JDK を使用する場合は、 $JBOSS_HOME/modules/com/liferay/portal/main/module.xml ファイルを修正し、 dependencies 要素に <module name="ibm.jdk"> を追加してください。 次に、 $JBOSS_HOME/modules/system/layers/base/sun/jdk/main/module.xml ファイルに移動し、 <paths>...</paths> エレメントの中に以下のパス名を挿入します:

	<path name="com/sun/crypto" />
	<path name="com/sun/crypto/provider" />
	<path name="com/sun/image/codec/jpeg" />
	<path name="com/sun/org/apache/xml/internal/resolver" />
	<path name="com/sun/org/apache/xml/internal/resolver/tools" />

それ以外の場合は、次のステップに進んでください。

管理者は、Windowsの standalone.conf.bat ファイルを設定する必要があります。

  1. ${JBOSS_HOME}/binに移動します。
  2. standalone.conf.bat ファイルを開いてください。
  3. Enter: set "JAVA_OPTS=%JAVA_OPTS% -Dfile.encoding=UTF-8 -Djava.net.preferIPv4Stack=true -Dsecmgr -Djava.security.policy=$JBOSS_HOME/bin/server.policy -Djboss.home.dir=$JBOSS_HOME -Duser.timezone=GMT -Xmx4096m -XX:MaxMetaspaceSize=2g"

より良いパフォーマンスを得るために、 -Xmx を4gに、 MaxMetaspaceSize2gに増やしてください。

セキュリティ

Marketplaceからサードパーティーのアプリを使用したい開発者は、Liferay Digital Enterprise 7.0インスタンスとJBossサーバーをセキュリティ脅威から保護したいと思うでしょう。 そのためには、JBossサーバーでJava Securityを有効にし、Liferay Digital Enterprise 7.0インスタンスにサーバーへのアクセスを許可するセキュリティポリシーを指定します。 -Dsecmgr-Djava.security.policy Java オプションを standalone.conf.bat ファイルに設定することを忘れないでください。 -Dsecmgr Java オプションは、JBoss でのセキュリティを有効にします。 同様に、 -Djava.security.policy Javaオプションは、サーバーのJavaセキュリティポリシーの許可をリストアップします。 この設定により、すべてのパーミッションが開放されます。 ポリシーのパーミッションを後で調整する。 $JBOSS_HOME/bin/server.policy ファイルを作成し、以下の内容を追加します:

grant {
    permission java.security.AllPermission;
};

Java SE Security Architectureの詳細については、その仕様書( JavaTM SE Platform Security Architecture)を参照してください。

デプロイ

  1. $JBOSS_HOME/standalone/deployments/ROOT.war というフォルダがすでに存在する場合は、そのサブフォルダとファイルをすべて削除してください。 それ以外の場合は、 $JBOSS_HOME/standalone/deployments/ROOT.warという名前の新しいフォルダーを作成します。
  2. Liferay DXP 7.0 .war ファイルを ROOT.war フォルダに解凍してください。
  3. ROOT.war のデプロイを開始するには、 $JBOSS_HOME/standalone/deployments/ フォルダに ROOT.war.dodeploy という空のファイルを作成します。 起動時にJBossはこのファイルの存在を検出し、Webアプリケーションとしてデプロイします。
  4. $JBOSS_HOME/bin に移動して standalone.bat|shを実行して、JBoss アプリケーションサーバーを起動します。

この時点で、アプリケーションサーバーが起動し、Liferay DXP 7.0がデプロイされたことになります。 アクティベーションキーをデプロイするか、Liferay Connected Services(LCS)でインスタンスを管理し、Liferay DXPの利用を開始します。

追加情報

この記事は役に立ちましたか?
0人中0人がこの記事が役に立ったと言っています