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ファイルがマウントされている必要があります。これを実現するには、volume mountsの下にある「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を使用するためのチュートリアルに従って変換を開始できます。
