フッターコンテンツにスキップ
IRONSECUREDOCを使用する

Docker Composeビルド(開発者向けチュートリアル)

Dockerとは何ですか?

Dockerは、コンテナ化を使用してアプリケーションの開発、展開、および実行プロセスを簡素化するオープンソースのプラットフォームです。 コンテナは、アプリケーションとその依存関係をパッケージ化した超軽量でポータブルなユニットであり、開発者のローカルシステムから本番サーバーまで、多様な環境での一貫した実行を可能にします。 従来の仮想マシンとは異なり、コンテナはホストオペレーティングシステムのカーネルを利用し、速度と効率を向上させます。

Docker Compose Build(開発者向けチュートリアル):図1

Dockerは、Dockerイメージを通じて仮想化されたテンプレートを提供し、コンテナのセットを作成および管理します。 Docker Hubという形のコンテナイメージリポジトリを含んでいます。 この技術の大きな魅力は、DevOpsやクラウド中心の開発ワークフローで非常に人気があるスケーラビリティ、ポータビリティ、効率性です。

Dockerはどのように動作しますか?

  • Docker Daemonは、docker builddocker pulldocker runなどを含むDocker Clientからのリクエストを待ち受けます。
  • Docker Daemonは、コンテナの作成、管理、および監視を行います。 また、Docker Hubなどのレジストリから必要なDockerイメージを取得します。
  • ダウンロードされたイメージを使用して、デーモンはアプリケーションの実行インスタンスである隔離されたコンテナを作成します。
  • コンテナはホストマシンのOSカーネルを共有しますが、相互に隔離されており、その依存関係とともにソフトウェアがユニークな環境で動作できるようにします。
+--------------------+
|   Docker Client    |
|  (CLI/API)         |
+--------------------+
          |
          v
+--------------------+               +---------------------+
|   Docker Daemon    |   -------->   |   Docker Registry   |
|  (manages resources|               |  (stores images)    |
|  & runs containers)|               +---------------------+
+--------------------+
          |
          v
+---------------------+
|      Container      |  
|  (App Instance)     |
+---------------------+
          |
          v
+---------------------+
| Docker Image        |  
| (App Blueprint)     |
+---------------------+

Docker Composeとは?

Docker Composeは、docker-compose.ymlという1つのファイルを使用して、マルチコンテナのDockerアプリケーションを簡単に管理する方法を提供します。 このYAMLファイルは、Dockerイメージ、環境変数、ネットワーク、ボリュームなどの側面を設定する複数のサービスの構成を可能にします。 docker-compose updocker-compose downなどのDocker Composeコマンドを使用して、アプリケーション内のすべてのコンテナを単一のアクションで管理できます。

+--------------------------+
|   docker-compose.yml     |  (Configuration file)
+--------------------------+
            |
            v
+----------------+    +----------------+    +----------------+
|   Service 1    |    |   Service 2    |    |   Service 3    |
|  (e.g. web)    |    |  (e.g. db)     |    |  (e.g. cache)  |
+----------------+    +----------------+    +----------------+
            |                  |                   |
            -----------------------------------------
                         Docker Application

Docker Composeは、多数のコンテナインスタンスを持つマイクロサービスのような複雑なアプリケーションに特に有利です。 開発、テスト、本番環境で効果的に使用されます。

ASP.NET Coreを使用して新しいReact JSアプリケーションを作成する

ASP.NET Coreバックエンドで新しいVisual Studio Reactアプリケーションを作成し、Dockerサポートを追加するために、次の手順に従ってください:

前提条件

  • Visual Studio:必要なワークロードと共にVisual Studio 2022以降をインストールしてください:
    • Web開発とASP.NET
    • Node.js開発(React)
    • Dockerサポート
  • Docker Desktop:インストールされて稼働中である必要があります。

新しいプロジェクトの作成

  1. Visual Studioを開き、メニューから新しいプロジェクトを選択します。

Docker Compose Build(開発者向けチュートリアル):図2

  1. "新しいプロジェクトの作成"ダイアログで"React and ASP.NET Core Web Application"を検索し、選択します。 次へをクリックします。

Docker Compose Build(開発者向けチュートリアル):図3

  1. プロジェクト名を指定し、ソリューション名を選び、保存場所を選択します。 次へをクリックします。

Docker Compose Build(開発者向けチュートリアル):図4

  1. Dockerサポートが有効になっていることを確認します。 希望のフレームワークを選択し、作成をクリックします。

Docker Compose Build(開発者向けチュートリアル):図5

  1. プロジェクト作成後、プロジェクトノードを右クリックし、"追加 > Dockerサポート"を選択してDockerサポートを追加します。

Docker Compose Build(開発者向けチュートリアル):図6

  1. コンテナ名とタイプを選んで、OKをクリックします。

Docker Compose Build(開発者向けチュートリアル):図7

新しく作成されたプロジェクトがDockerコンテナに追加されたので、Docker Composeコマンドを実行できます。 以下は、React JSクライアントサイドコードから生成されたサンプル出力です。

Docker Compose Build(開発者向けチュートリアル):図8

以下は、Dockerコンテナから実行されるAPIサーバーサイドコードです。

Docker Compose Build(開発者向けチュートリアル):図9

IronSecureDoc

IronSecureDocは、開発者が安全なドキュメント処理をコンテナ化されたアプリケーションに効率的に埋め込むことを可能にします。 Dockerのサポートを受け、IronSecureDocを使用してASP.NET Coreアプリをカプセル化し、シームレスな展開とスケーリングを促進します。 IronSecureDocをASP.NET Coreアプリに統合するためのDockerfileを作成し、必要なスクリプトや設定を追加します。

Docker Compose Build(開発者向けチュートリアル):図10 - IronSecureDoc

さらに、docker-compose.ymlファイルでサービスの依存関係と環境変数を明示することで、異なる展開環境でドキュメントセキュリティのタスクを効率的に処理するための簡単なアクセスをサポートします。 Dockerと同様に、IronSecureDocのインストールと設定は、ドキュメントの暗号化や編集機能を提供するために不可欠です。

IronSecureDocのインストールと実行

次のコマンドを使用してIronSecureDoc Dockerイメージを取得します:

docker pull ironsoftwareofficial/ironsecuredoc
docker pull ironsoftwareofficial/ironsecuredoc
SHELL

Docker Compose Build(開発者向けチュートリアル):図11

イメージをプルした後、新しいコンテナでIronSecureDocを起動するために以下のコマンドを使用します:

docker container run --rm -p 8080:8080 -e IronSecureDoc_LicenseKey=<IRONSECUREDOC_LICENSE_KEY> -e ENVIRONMENT=Development -e HTTP_PORTS=8080 ironsoftwareofficial/ironsecuredoc:latest
docker container run --rm -p 8080:8080 -e IronSecureDoc_LicenseKey=<IRONSECUREDOC_LICENSE_KEY> -e ENVIRONMENT=Development -e HTTP_PORTS=8080 ironsoftwareofficial/ironsecuredoc:latest
SHELL

Docker Compose Build(開発者向けチュートリアル):図12

DockerコンテナでIronSecureDocを使用する

IronSecureDocのREST APIは、Docker内でインストールされ実行されると、編集、認証、暗号化などのドキュメント操作を可能にします。 APIエンドポイントの詳細は、ドキュメントを確認してください。

ドキュメントを暗号化するには、IronSecureDoc APIにPOSTリクエストを送信します:

curl -X 'POST' \
  'http://localhost:8080/v1/document-services/pdfs/encrypt?user_password=demo' \
  -H 'accept: */*' \
  -H 'Content-Type: multipart/form-data' \
  -F 'pdf_file=@test.pdf;type=application/pdf'
curl -X 'POST' \
  'http://localhost:8080/v1/document-services/pdfs/encrypt?user_password=demo' \
  -H 'accept: */*' \
  -H 'Content-Type: multipart/form-data' \
  -F 'pdf_file=@test.pdf;type=application/pdf'
SHELL

このコマンドは、ドキュメントをIronSecureDocに提出して暗号化します。

結論

Docker ComposeとIronSecureDocを統合することで、安全なドキュメント処理を必要とするアプリケーションの効率と信頼性が大幅に向上します。 Docker Composeはマルチコンテナアプリケーションを効果的に管理し、依存関係とサービスの調整を簡素化し、IronSecureDocを含む開発環境の一貫性を確保し、設定を簡素化し、スケーラビリティを高めます。

この設定では、開発者はコンテナ化されたフレームワーク内で暗号化や編集などのドキュメントセキュリティ機能を完全に活用できます。 全体として、Docker ComposeとIronSecureDocを組み合わせることで、開発プロセスが豊かになり、現代のアプリケーションで機密文書を処理するための安全で効率的な方法を提供します。 IronSecureDocのライセンスに関する情報は、こちらのページを参照してください。 こちらをクリックして、さらに多くのIron Software製品を探検してください。

よくある質問

Dockerとは何か、およびそれがアプリケーションのデプロイをどのように促進するか。

Dockerは、コンテナを使用してアプリケーションの開発とデプロイを簡略化するオープンソースのプラットフォームです。コンテナは、アプリケーションとそのすべての依存関係をパッケージ化した軽量でポータブルな単位であり、さまざまな環境での一貫した実行を保証します。

Docker Composeは、複雑なアプリケーションの管理にどのように役立ちますか?

Docker Composeは、`docker-compose.yml`ファイルを使用してマルチコンテナDockerアプリケーションを管理するツールです。サービス、イメージ、ネットワーク、およびボリュームの構成と調整を簡素化し、マイクロサービスのような複雑なアプリケーションの管理に最適です。

Visual StudioでDockerを使用してASP.NET CoreによるReact JSアプリケーションを作成する手順は?

Dockerを使用してVisual StudioでASP.NET CoreによるReact JSアプリケーションを作成するには、必要なワークロードとDocker DesktopがインストールされたVisual Studio 2022以降を用意してください。プロジェクトを作成し、Dockerサポートを追加し、Docker Composeのコマンドを使用してアプリケーションを管理します。

IronSecureDocは、安全なドキュメント処理のためにDockerとどのように統合されますか?

IronSecureDocは、そのDockerイメージをプルし、コンテナ内で実行することでDockerと統合できます。このセットアップにより、REST APIを介した暗号化や編集といった安全なドキュメント処理操作が可能となり、コンテナ化されたアプリケーションのセキュリティが向上します。

IronSecureDocによるドキュメント処理にDocker Composeを使用することの利点は何ですか?

Docker Compose と IronSecureDoc を統合することで、コンテナ化された環境での依存関係とサービスを管理し、アプリケーションの効率と信頼性を向上させます。これは、安全でスケーラブルな文書処理を保証し、堅牢な文書セキュリティを必要とするアプリケーションにとって重要です。

既存のVisual StudioプロジェクトにDockerサポートを追加するにはどうすればよいですか?

既存のVisual StudioプロジェクトにDockerサポートを追加するには、プロジェクトノードを右クリックし、[追加] > [Dockerサポート]を選択し、適切なコンテナオプションを選択します。これにより、プロジェクトにDockerの機能が統合され、コンテナ化された開発が可能になります。

DockerコンテナでIronSecureDocを実行するプロセスは何ですか?

DockerコンテナでIronSecureDocを実行するには、`docker pull`コマンドを使用してイメージを取得し、ライセンスキーやポートなどの必要な環境変数と共に`docker container run`を実行します。このセットアップにより、コンテナ内での安全なドキュメント処理が可能となります。

Docker環境でIronSecureDocを使用してドキュメントを暗号化する方法は?

IronSecureDocを使用してドキュメントを暗号化するには、そのAPIにPOSTリクエストを送信します。ローカルファイルパスと暗号化パラメータを指定して、`curl`コマンドを使用してドキュメントをアップロードします。この操作により、Dockerコンテナ内でドキュメントが安全に保護されます。

カーティス・チャウ
テクニカルライター

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。

開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。