CodeZine(コードジン)

特集ページ一覧

Jenkinsで実現するJava EEアプリケーションの自動ビルドと自動デプロイ

Jenkinsを利用した「WebSphere Application Sever Liberty Core」へのデプロイの定期実行化

  • LINEで送る
  • このエントリーをはてなブックマークに追加
2014/07/30 14:00

目次

自動デプロイの前準備

 先程はローカルでコマンドを実行してデプロイをしていました。WebSphere Application Server Liberty Coreではリモートデプロイできる仕組みが準備されており、Jenkinsからデプロイする場合はその仕組みを使用します。

 ここからは、WebSphere Application Server Liberty Coreに対してリモートデプロイの設定を行います。

 この記事では同じマシーンにある場合の検証のみ行っていますが、実際にはこの設定はJenkinsとWebSphere Application Server Liberty Coreが別マシーンにある場合にも使用できます。

WebSphere Application Server Liberty Coreへリモートデプロイを受け入れる設定の追加

 「%LIBERTY_HOME%¥usr¥servers¥liberty¥server.xml」を編集します。

1. restConnector-1.0を有効にするため、server.xmlに以下の記載を追加します。
<featureManager>
    <feature>restConnector-1.0</feature>
</featureManager>
2. quickStartSecurityタグを追加します。
<quickStartSecurity userName="bob"  userPassword="bobpassword" />
3. remoteFileAccessタグを追加します。
<remoteFileAccess>
    <readDir>${server.output.dir}/dropins</readDir>
    <writeDir>${server.output.dir}/dropins</writeDir>
</remoteFileAccess>
4. httpEndpointタグにhost="*"属性を追加します。
<httpEndpoint id="defaultHttpEndpoint" host="*" httpPort="9080" httpsPort="9443" />
5. SSL証明書の作成

 以下のコマンドを実行し、SSL証明書を作成します。

%LIBERTY_HOME%\bin\securityUtility createSSLCertificate --server=liberty --password=[パスワード]

 「パスワード」には自由な値を設定してください。後ほどJenkinsの画面で入力する必要があるので、忘れないようにしてください。

 証明書の作成に成功するとserver.xmlに追加する内容が表示されるので、表示された内容をそのまま追加します。

 また、実行結果の1行目に表示されている「key.jksファイル」は、Jenkinsの設定で必要となるファイルです。jenkinsをインストールするマシーンにファイルをコピーします。

証明書作成
証明書作成

 最後にserver.xmlを反映させるために再起動を行います。

%LIBERTY_HOME%\bin\server stop liberty
%LIBERTY_HOME%\bin\server start liberty

 ここまでくればWebSphereの設定は終わりです。

JavaのKeyStoreへの証明書のインストール

 この設定はJenkinsを動かすマシーンへ行います。

1. ブラウザからWebSphereにhttpsでアクセスします。
https://localhost:9443/

 ポート番号はserver.xmlのhttpEndpointタグに記載されているhttpsPort属性の値です。host名は実際にWebSphereが動いている名前で読み替えてください。

2. 証明書が不正である旨が表示されますが、気にせず続行します。
証明書取得1
証明書取得1
3. 証明書のエラーの箇所をクリックし、証明書の表示をクリックします。
証明書取得2
証明書取得2
4. 証明書が表示されるので、詳細をクリックし、ファイルにコピーをクリックします。
証明書取得3
証明書取得3
5. 証明書エクスポートウィザードが起動するので、次へをクリックします。
証明書取得4
証明書取得4
6. 次へをクリックします。
証明書取得5
証明書取得5
7. 証明書をエクスポートする先を入力して、次へをクリックします。
証明書取得6
証明書取得6

 エクスポートした証明書は、この後すぐに使用します。

8. 完了をクリックします。
証明書取得7
証明書取得7
9. ブラウザからエクスポートした証明書をJavaのキーストアに取り込みます。

 管理者権限で起動したコマンドプロンプトで以下のコマンドを入力します。

"%JAVA_HOME%\jre\bin\keytool" -keystore "%JAVA_HOME%\jre\lib\security\cacerts" -importcert -alias websphere-liberty-remote -file [先ほどエクスポートした証明書ファイル]

 パスワードの入力を求められるので、「changeit」と入力してください。パスワードを変更している場合は、変更したパスワードを入力してください

 「証明書を信頼しますか」と確認されるのでyを入力し、エラーが出なければ完了です。

証明書取得7
証明書取得7

 管理者権限がないコマンドプロンプトで実行すると、アクセスが拒否されることがあります。その場合は管理者権限でコマンドプロンプトを起動しなおしてください。

 ブラウザからエクスポートした証明書は、この作業が終われば不要なので削除しても大丈夫です。


  • LINEで送る
  • このエントリーをはてなブックマークに追加

あなたにオススメ

著者プロフィール

All contents copyright © 2005-2021 Shoeisha Co., Ltd. All rights reserved. ver.1.5