Google Cloud Platform (GCP) に JPedal をデプロイする
- WAR ファイルのダウンロードまたはビルド
- プロジェクトの作成
- 仮想マシン (VM) インスタンスの作成
- コンテナイメージのデプロイ
- ボリュームのマウント
- WAR ファイルのアップロード
- HTTPS 設定の完了
- JPedal の実行
- 異なる言語のクライアントから JPedal を実行する
Google Cloud Platform で JPedal を実行する最も簡単な方法は、スタンドアロンインスタンス上で単一のコンテナを実行することです。インスタンスを作成する際にコンテナイメージを指定することで実現できます:
開始する前に、WAR ファイルが必要です。これはダウンロードするか、自分でビルドすることができます。
この WAR ファイルは、JPedal サービスが動作するために必須です。
jpedal-microservice.war ファイルをダウンロードしてください。
トライアルユーザーの方は、トライアル登録 後、Docker セクションから WAR ファイルをダウンロードできます。
JPedal Microservice Example プロジェクトのコピーをビルドします。
手順は GitHub ページ
にあります。
WAR ファイルをダウンロードしたら、GCP でプロジェクトを作成することから始めます:

プロジェクトの準備ができると、次の画面が表示されます:

サイドバーの「Compute Engine」をクリックすると、次の画面に移動します:
スピナーが消えると、「Create」ボタンがアクティブになります。クリックしてください。「Create Instance」画面が表示されます:

インスタンスに名前を付け、近くのリージョンを選択します。デフォルトのゾーンとマシン構成で問題ありません。

次に「Deploy a container image to this VM instance」にチェックを入れると、イメージ名を入力できる新しいフィールドが表示されます。idrsolutions/jpedal と入力してください。

サーバーに認証を追加したい場合は、「Advanced container options」をクリックして、次の環境変数を追加します:

JPedal の docker イメージが機能するためには、jpedal-microservice.war ファイルをマウントすることが必須です。これを実現するには、ボリュームマウントの下にある「Add volume」をクリックします。次のようにフォームを入力してください。必ず $USER を自分のユーザー名に置き換えてから、「Done」をクリックしてください。

変換結果の出力ファイルを無期限に保存したい場合は、それらを保存するための永続ボリュームをマウントする必要があります。もう一度「Add volume」をクリックして追加のボリュームを定義し、次のようにフォームを入力してから、「Done」をクリックします。

HTTPS 暗号化を使用する予定の場合(推奨)、SSL 証明書と秘密鍵をアップロードできる追加のボリュームも定義する必要があります。

「Firewall」セクションまでスクロールして「Allow HTTP traffic」をクリックし、「Create」をクリックします。

インスタンスがビルドされ、準備ができると次の画面に表示されます:

このチュートリアルでは SSH 経由での方法を説明しますが、他の方法 も利用可能です。
インスタンスが作成されたら、イメージをプルしてコンテナを起動するまで数分待ちます。この段階で変更を加えた後、VM を再起動する必要があります。「Connect」の下にある「SSH」をクリックします。次のようなウィンドウが開きます:

接続が確立されたら、ウィンドウの右上にある歯車アイコンをクリックし、「Upload file」を選択します。

WAR ファイルを選択し、「Okay」をクリックします。
デフォルトでは、これは /home/$USER ディレクトリにアップロードされます。これはボリュームマウントが設定されている場所です。
HTTPS を有効にする予定がある場合は、次のセクションに進んでください。
それ以外の場合は、これらの変更を加えた後に VM を再起動して、サービスが正しく起動することを確認してください。コンテナが起動するまで再び数分待ってから、JPedal の実行 に進みます。
HTTPS を有効にするには、インスタンスが実行中の状態で、certificate.crt、private.key、および ca_bundle.crt ファイルを /home/ssl にアップロードする必要があります。SSH ボタンをクリックして Web コンソールを開きます:


/home/ssl ディレクトリに移動し、certificate.crt という名前の新しいファイルを作成して、証明書ファイルの内容を貼り付けます。これは vim を使用して行うことができます。
ファイルを開くには次のコマンドを使用します
sudo vim certificate.crt
ファイルが開いたら、「i」を押して編集モードに入り、内容を貼り付けます。

ファイルを保存します(ESC に続けて :wq ENTER)。次に、秘密鍵についても同じことを行い、ファイル名を private.key としてください。証明書チェーンについても同様に、ca_bundle.crt という名前で作成します。
JPedal は証明書の存在を検出し、HTTPS モードで起動します。すべての HTTP トラフィックは自動的に HTTPS 暗号化を使用するようにアップグレードされます。
これらの変更を加えた後、VM を再起動して、サービスが正しく起動することを確認してください。コンテナが起動するまで再び数分待ちます。
インスタンスが起動して実行されたら、「External IP」の横にあるアイコンをクリックします。提供した Web サービスのユーザー名とパスワードの入力を求められます。正しければ、「JPedal Microservice Example」というテキストを含む JPedal のウェルカム画面が表示されます。
これで http://<your_external_ip>/jpedal に API コールを行うことができます。
認証、複数のユーザー、API を使用せずに変換されたファイルへのアクセスなどの追加機能を追加するには、docker イメージページ で詳細を確認できます。
インスタンスの使用が終わり、もう必要なくなったら、GCP の料金が発生しないように削除することを忘れないでください:
警告:上記の手順を使用してディレクトリを共有ボリュームとしてマウントした場合、インスタンスを削除するとマウントされたフォルダーも削除されます。保存したいドキュメントは必ずダウンロードしておいてください。

Docker サーバーが実行されているので、API を使用するためのチュートリアルに従って変換を開始できます。
