C# コンテナインスタンスを使用して IronSecureDoc を AWS にデプロイする
Amazon Elastic Container Service (Amazon ECS) は、コンテナの実行、停止、管理を容易にする、高度にスケーラブルで高速なコンテナ管理サービスです。 AWS Fargate でサービスまたはタスクを起動することで、Amazon ECS によって管理されるサーバーレスインフラストラクチャ上でコンテナをホストできます。 Fargate の詳細については、 "Amazon ECS 向け AWS Fargate"を参照してください。
ステップ1: AWSアカウントにサインインする
AWSポータルにサインイン。
AWS アカウントをお持ちでない場合は、新しい AWS アカウントを登録してください。
ステップ2: 仮想プライベートクラウドを作成する
Amazon Virtual Private Cloud (Amazon VPC) を使用すると、定義した仮想ネットワークに AWS リソースを起動できます。 コンテナ インスタンスを VPC で起動することを強くお勧めします。
デフォルトVPCをお持ちの場合は、このセクションをスキップして次のタスク"セキュリティグループの作成"に進んでください。デフォルトVPCがあるかどうかを確認するには、Amazon EC2 ユーザーガイドの"Amazon EC2 コンソールでサポートされているプラットフォーム"を参照してください。そうでない場合は、以下の手順に従ってアカウントにデフォルト以外のVPCを作成できます。
VPC の作成方法については、"Amazon VPC ユーザーガイド"の"VPC のみの作成"を参照し、次の表を使用して選択するオプションを決定してください。
| オプション | Value |
|---|---|
| 作成するためのリソース | VPCのみ |
| 名前 | オプションでVPCの名前を入力します |
| IPv4 CIDRブロック | IPv4 CIDR手動入力 CIDRブロックサイズは/16から/28までの範囲でなければなりません |
| IPv6 CIDRブロック | IPv6 CIDRブロックなし |
| 賃貸借 | デフォルト |
Amazon VPC の詳細については、"Amazon VPC とは?"を参照してください。 Amazon VPC ユーザーガイド。
ステップ3: セキュリティグループを作成する
セキュリティ グループは、関連付けられたコンテナ インスタンスのファイアウォールとして機能し、コンテナ インスタンス レベルで受信トラフィックと送信トラフィックの両方を制御します。 SSH を使用して IP アドレスからコンテナ インスタンスに接続できるようにするルールをセキュリティ グループに追加できます。 どこからでも受信および送信の HTTP および HTTPS アクセスを許可するルールを追加することもできます。 タスクに必要なポートを開くためのルールを追加します。 コンテナインスタンスは、Amazon ECS サービスエンドポイントと通信するために外部ネットワークアクセスを必要とします。
セキュリティグループの作成方法については、"Amazon EC2 ユーザーガイド"の"セキュリティグループの作成"を参照し、次の表を使用して選択するオプションを決定してください。
| オプション | 価値 |
|---|---|
| 地域 | キーペアを作成したのと同じリージョン |
| 名前 | ecs-instances-default-cluster など、覚えやすい名前 |
| VPC | デフォルトの VPC ("(default)"とマークされています) 注記 アカウントがAmazon EC2 Classicをサポートしている場合は、前のタスクで作成したVPCを選択します。 |
ステップ4: ECSクラスターを作成する
AWS ポータルのホームページで、検索ボックスで"ECS"を検索し、"Elastic Container Service"を選択します。 または、 https://console.aws.amazon.com/ecs/v2でコンソールを開きます。

"クラスターの作成"を選択します。

"クラスター名"を入力します。 インフラストラクチャセクションで"AWS Fargate (サーバーレス)"のみを選択します。

他の値はデフォルトのままにして、 [作成]を選択します。
ステップ5: タスク定義を作成する
クラスターが作成されたら、タスク定義を選択します。

"新しいタスク定義の作成"を選択し、"新しいタスク定義の作成"を選択します。

タスク定義構成セクションで、タスク定義ファミリの値を入力します。

インフラストラクチャ要件セクションで、起動タイプ、 CPU 、メモリ、タスク ロール、タスク実行ロールに次の値を入力します。
- 起動タイプ:
AWS Fargateのみ - CPU:
1 vCPU - メモリ:
2 GB - タスクロール:
ecsTaskExecutionRole - タスク実行ロール:
ecsTaskExecutionRole

コンテナー - 1セクションで、名前、イメージ URI 、コンテナー ポート、ポート名、環境変数に次の値を入力します。
- 名前:
mycontainer - 画像URI: 最新版には
ironsoftwareofficial/ironsecuredocを使用するか、タグironsoftwareofficial/ironsecuredoc:2024.7.1で指定します。 - コンテナポート:
8080 - ポート名:
8080 - 環境変数を追加します:
環境:プロダクションHTTP_PORTS:8080IronSecureDoc_LicenseKey:<コード>YOUR-LICENSE-KEY</コード
IronSecureDoc_LicenseKeyについては、セキュリティのために環境変数に直接追加することは推奨されません。 暗号化された Amazon S3 バケットから環境ファイルを取得することをお勧めします。 "機密データを Amazon ECS コンテナに渡す"を参照してください。

他の値はデフォルトのままにして、 [作成]を選択します。
ステップ6: サービスを作成する
クラスター ページに戻り、クラスター (IronSecureDoc) を選択します。

"サービス"タブを選択し、"作成"を選択します。

環境セクションで、コンピューティング オプションと起動タイプに次の値を入力します。
- コンピューティングオプション:
Launch typeを選択 - 起動タイプ:
FARGATE選択

デプロイメント構成セクションで、アプリケーション タイプ、ファミリ、リビジョン、サービス名、および必要なタスクに次の値を入力します。
- アプリケーションの種類:
Serviceを選択 - タスク定義:
- ファミリー: 作成されたタスク定義
ironsecuredocを選択します - リビジョン: タスク定義リビジョン
1 (LATEST)を選択します。
- ファミリー: 作成されたタスク定義
- サービス名:
myservice - 希望するタスク:
1

ネットワークの場合、 VPCとセキュリティ グループが存在しない場合は作成する必要がある場合があることに注意してください。
他の値はデフォルトのままにして、 [作成]を選択します。
デプロイメントが開始されると、デプロイメントが進行中であることを示す通知が表示されます。 サービスがデプロイされると、別の通知が表示されます。
サービスを表示し、タスクを開きます。

タスク構成では、パブリック IP を使用して curl コマンドを実行し、API が正しく動作しているかどうかを確認できます。このコマンドはpongを返します。
curl http://18.118.166.206:8080/v1/document-services/pingcurl http://18.118.166.206:8080/v1/document-services/ping
おめでとうございます! いくつかの設定を行うだけで、Amazon Elastic Container Serviceに一般からアクセス可能なアプリケーションをデプロイできました。
よくある質問
ドキュメントのセキュリティのためにAWSを設定するにはどうすればよいですか?
ドキュメントのセキュリティのためにAWSを設定するには、Amazon ECSを介してコンテナインスタンスをデプロイできます。これには、仮想プライベートクラウド(VPC)の作成、セキュリティグループの設定、サーバーレスインフラストラクチャのためのAWS Fargateの使用が含まれます。IronSecureDocを統合することで、安全なドキュメント管理を確保できます。
AWSで仮想プライベートクラウド(VPC)を作成する目的は何ですか?
AWSでVPCを作成することにより、AWSリソースを論理的に分離された仮想ネットワークに起動することができます。このセットアップは、ネットワーク環境を制御することができ、IronSecureDocなどのサービスを通じてドキュメントのセキュリティを管理するために非常に重要です。
ECSのデプロイにおいてセキュリティグループを設定することがなぜ重要なのですか?
セキュリティグループを設定することは、ECSコンテナインスタンスへの受信および送信トラフィックを制御するために重要です。これは仮想ファイアウォールとして機能し、AWS上で展開されたIronSecureDocサービスに許可されたトラフィックのみが到達することを保証します。
AWS Fargateを使用してコンテナインスタンスをデプロイするにはどうすればよいですか?
AWS Fargateを使用してコンテナインスタンスをデプロイするには、まずECSクラスターを作成する必要があります。その後、CPU、メモリ、コンテナ設定などの要件を指定したタスク定義を作成します。最後に、IronSecureDocのデプロイを管理するためのサービスをECSクラスター内に作成します。
Amazon ECSでのタスク定義はどのような役割を果たしますか?
Amazon ECSでは、タスク定義はアプリケーションの設計図として機能します。これは、ローンチタイプ、CPU、メモリ、コンテナの定義など、コンテナを実行するための要件を説明します。これはIronSecureDocのようなアプリケーションをデプロイするために不可欠です。
AWSで環境変数を安全に管理するにはどうすればよいですか?
AWSでは、IronSecureDocのライセンスキーのような機密データを暗号化されたAmazon S3バケットから取得することで、環境変数を安全に管理できます。このアプローチにより、機密情報の不正アクセスから保護されます。
ECSサービスのデプロイをどのように確認できますか?
ECSサービスのデプロイを確認するには、パブリックIPを使用してcurlコマンドを実行します。例えば、curl http://を実行することで、'pong'が返され、IronSecureDocサービスが正しく稼働していることを示します。
デプロイごとに新しいVPCとセキュリティグループを作成する必要がありますか?
デフォルトのVPCとセキュリティグループが存在しない場合は、適切なネットワークとセキュリティ設定を確保するためにそれらを作成する必要があります。この設定は、IronSecureDocのようなアプリケーションの安全な動作に不可欠です。





