2.7. オフラインで使用する Maven ミラーリポジトリーの用意

Red Hat OpenShift Container Platform 環境に公開インターネットへの送信アクセスが設定されていない場合には、必要なアーティファクトすべてのミラーが含まれる Maven リポジトリーを用意して、このリポジトリーを使用できるようにする必要があります。

注記

Red Hat OpenShift Container Platform 環境がインターネットに接続されている場合は、この手順を飛ばして次に進むことができます。

前提条件

  • 公開インターネットへの送信アクセスが設定されているコンピューターが利用できる。

手順

  1. 書き込みアクセス権がある Maven リリースリポジトリーを設定します。リポジトリーは認証なしで読み取りアクセスを許可する必要があり、OpenShift 環境にはこのリポジトリーへのネットワークアクセスが必要です。

    OpenShift 環境に、Nexus リポジトリーマネージャーをデプロイできます。OpenShift への Nexus の設定方法は、Red Hat OpenShift Container Platform 3.11 ドキュメントの「Nexus の設定 」を参照してください。このリポジトリーを別個のミラーリポジトリーとして使用します。

    または、サービスにカスタムの外部リポジトリー (Nexus など) を使用する場合、同じリポジトリーをミラーリポジトリーとして使用できます。

  2. 公共のインターネットに送信アクセスができるコンピューターで、以下の手順を実行します。

    1. Red Hat カスタマーポータルの Software Downloads ページから rhpam-7.7.0-offliner.zip の製品配信可能ファイルをダウンロードします。
    2. rhpam-7.7.0-offliner.zip ファイルの内容を任意のディレクトリーに展開します。
    3. ディレクトリーに移動し、以下のコマンドを入力します。

      ./offline-repo-builder.sh offliner.txt

      このコマンドは、repository サブディレクトリーを作成し、必要なアーティファクトをこのサブディレクトリーにダウンロードします。

      一部のダウンロードが失敗したことを示すメッセージが表示された場合は、同じコマンドを再度実行してください。ダウンロードが再び失敗する場合は、Red Hat サポートに連絡してください。

    4. repository サブディレクトリーのすべてのアーティファクトを、作成した Maven ミラーリポジトリーにアップロードします。アーティファクトのアップロードには、Maven repository tools Git リポジトリーから利用できる Maven Repository Provisioner ユーティリティーを使用できます。
  3. Business Central 外でサービスを開発し、追加の依存関係がある場合は、ミラーリポジトリーにその依存関係を追加します。サービスを Maven プロジェクトとして開発した場合は、以下の手順を使用し、これらの依存関係を自動的に用意します。公開インターネットへに送信接続できるコンピューターで、この手順を実行します。

    1. ローカルの Maven キャッシュディレクトリー (~/.m2/repository) のバックアップを作成して、ディレクトリーを削除します。
    2. mvn clean install コマンドを使用してプロジェクトのソースをビルドします。
    3. すべてのプロジェクトで以下のコマンドを入力し、Maven を使用してプロジェクトで生成したすべてのアーティファクトのランタイムの依存関係をすべてダウンロードするようにします。

      mvn -e -DskipTests dependency:go-offline -f /path/to/project/pom.xml --batch-mode -Djava.net.preferIPv4Stack=true

      /path/to/project/pom.xml は、プロジェクトの pom.xml ファイルへの正しいパスに置き換えます。

    4. ローカルの Maven キャッシュディレクトリー (~/.m2/repository) から作成した Maven ミラーリポジトリーにすべてのアーティファクトをアップロードします。アーティファクトのアップロードには、Maven repository tools Git リポジトリーから利用できる Maven Repository Provisioner ユーティリティーを使用できます。