fbpx
印刷

Amazon AWSで、PDFをHTMLやSVGに変換するサンプルコード

AWS で BuildVu を実行する最も簡単な方法は、Elastic Container Service(ECS)クラスターのコンテナで Docker イメージを実行することです。

WAR ファイルをダウンロードする

始める前に、まず WAR ファイルをダウンロードする必要があります。これは、Docker イメージが機能するために必要です。

試用版の場合:

  1. まだお済みでない場合は、BuildVuトライアルにサインアップしてください。
  2. サインアップ時に受信したメールを開きます。
  3. Docker セクションにあるダウンロードリンクをたどってください。

製品版の場合:

  1. Customer download page にアクセスします。
  2. SVG 版か HTML 版を選択した後、「Download Latest Customer WAR」をクリックします。
  3. ユーザー名とパスワードを送信すると、WAR ファイルのダウンロードが開始されます。

構築手順

最初に https://console.aws.amazon.com にアクセスしてログインします。
「AWS のサービス」内の「すべてのサービス」セクションを開き、「コンピューティング」の下の EC2 をクリックします。

インスタンスに SSH で接続するために、キーペアを作成します。
「キーペア」をクリックします。

「キーペアを作成」ボタンをクリックすると次のような画面になります。
「名前」を入力し、ファイル形式は pem を選択したら、「キーペアを作成」ボタンをクリックします。

次に、「サービス」メニューを開き、「コンテナ」内の「Elastic Container Service」をクリックします。

「クラスター」ページで、「クラスターの作成」ボタンをクリックします。
これにより、sshで接続できる独自の EC2 を起動できます。

「EC2 Linux + ネットワーキング」を選択し「次のステップ」ボタンをクリックします。

「クラスター名」を入力し、コンテナインスタンスに使用する EC2 インスタンスタイプを選択します。(これは必要なリソースの量によって異なります)
「キーペア」に上記で作成したキーペアを選択し、下にスクロールして「作成」ボタンをクリックします。

作成と起動が完了したら、「クラスターの表示」ボタンをクリックします。


「ECS インスタンス」タブから EC Instance 列の当該 ID をクリックします。(表示されるまでに時間がかかる場合があります)

さらに、当該インスタンス ID をクリックします。

「セキュリティ」タブに移動し、「セキュリティグループ」の ID をクリックします。

「インバウンドルールを編集」ボタンをクリックします。

「ルールを追加」ボタンをクリックし、以下に示すように SSH の値を入力してから、「ルールを保存」ボタンをクリックします。

EC2 インスタンスに戻り、「接続」ボタンをクリックします。

「SSH クライアント」タブに移動し、パブリック DNS をコピーします。

ターミナルソフトを開き、以下のコマンドを自分の情報に書き換えた上で実行します。(AMI オーナーが変更しない限り、ここでのデフォルトのユーザー名は「ec2-user」です)
インスタンスへ WAR ファイルがアップロードされます。

scp -i [pem ファイルのパス] [WAR ファイルのパス] ec2-user@[パブリック DNS]:~

以下のコマンドでインスタンスに SSH で接続します。

ssh -i [pem ファイルのパス] ec2-user@[パブリック DNS]

接続したら、以下のコマンドで Docker イメージを実行します。

docker run -p 80:80 –mount “source=/home/ec2-user/buildvu-microservice.war,target=/usr/local/tomcat/webapps/ROOT.war,type=bind” idrsolutions/buildvu

最後に、インスタンスのパブリック IP アドレスにブラウザでアクセスし「BuildVu Microservice Example」と表示されれば起動成功です。
API を使用して PDF を変換することができます。
詳しくは Using the API をご覧ください。

HTTPS の有効化

HTTPSを有効にするには、仮想マシンの /opt/ssl にマウントされた有効な SSL 証明書とキーが必要です。
また、ファイアウォールで HTTPS ポートを開く必要があります。

EC2 インスタンスの「セキュリティ」タブに移動して、「セキュリティグループ」の ID をクリックします。

「インバウンドルールを編集」ボタンをクリックします。

「ルールを追加」ボタンをクリックし、以下に示すように HTTPS の値を入力してから、「ルールを保存」ボタンをクリックします。

次に、ターミナルソフトを使用して必要な SSL 証明書をアップロードします。
SSH でインスタンスに接続し、以下のコマンドでディレクトリ「/opt/ssl」を作成します。

mkdir /opt/ssl

次に、SSL 証明書をこのディレクトリにアップロードします。

scp -i [pem ファイルのパス] [certificate.crt ファイルのパス] ec2-user@[パブリック DNS]:/opt/ssl/certificate.crt
scp -i [pem ファイルのパス] [private.key ファイルのパス] ec2-user@[パブリック DNS]:/opt/ssl/private.key
scp -i [pem ファイルのパス] [ca_bundle.crt ファイルのパス] ec2-user@[パブリック DNS]:/opt/ssl/ca_bundle.crt

これで、仮想マシンは HTTPS 接続を許可するようになったので、以下のコマンドでポートを使用して Docker を起動します。

docker run -p 80:80 -p 443:443 –mount “source=/local/path/to/ssl/directory,target=/opt/ssl,type=bind,readonly” –mount “source=/home/ec2-user/buildvu-microservice.war,target=/usr/local/tomcat/webapps/ROOT.war,type=bind” idrsolutions/buildvu

削除方法

クラスターが不要になった場合は、EC2 インスタンスを終了した後、「クラスターの削除」ボタンを押してクラスターを削除します。

 

    MENU
    PAGE TOP