IRONSECUREDOCを使用する Docker Composeネットワーク(開発者向けの仕組み) カーティス・チャウ 更新日:6月 22, 2025 IronSecureDoc をダウンロード 無料ダウンロード 無料トライアル LLM向けのコピー LLM向けのコピー LLM 用の Markdown としてページをコピーする ChatGPTで開く このページについてChatGPTに質問する ジェミニで開く このページについてGeminiに問い合わせる ジェミニで開く このページについてGeminiに問い合わせる 困惑の中で開く このページについてPerplexityに問い合わせる 共有する Facebook で共有 Xでシェア(Twitter) LinkedIn で共有 URLをコピー 記事をメールで送る Dockerとは何ですか? Dockerは、軽量で移植可能なコンテナ内でのアプリケーションのデプロイとスケーリングを自動化するためのコンテナベースの概念を使用するオープンソースプラットフォームです。 簡単に言うと、Dockerコンテナはすべてのアプリケーションコードとその依存関係を1つのユニットにまとめ、開発者のラップトップからテストサーバーや本番クラウドサーバーまで一貫性を保ちます。 コンテナは、ホストシステムのオペレーティングシステムカーネルを共有するため、従来の仮想マシン(VM)とは異なります。 したがって、コンテナは非常に効率的で起動が速いです。 実際、Dockerコンテナは開発サイクルのすべての段階で一貫した動作を保証します。 実際、Dockerイメージはアプリケーション環境を持つコンテナの記述テンプレートです。 このセットには、コンテナのライフサイクルを管理するためのツールキットも含まれます。 一例として、Docker Composeがあります。これは、複数のコンテナで構成されるアプリケーションをオーケストレーションするために使用できます。 次に、イメージを共有するためのレジストリであるDocker Hubがあります。 Docker Composeネットワークとは何ですか? Docker Composeネットワークにより、Docker Composeアプリケーション内で実行されているサービスが、同じカプセル化された環境内で互いに通信できるようになります。 docker-compose.ymlファイルに複数のサービスを定義すると、Docker Composeは自動的にデフォルトのネットワークを作成し、それらのサービスがホスト名としてサービス名を使用してお互いに通信できるようにします。 本質的に、それにより、ユーザーは独自のネットワークと、作成されたネットワークを持つ複数のサービスを定義できます。 デフォルトブリッジネットワーク: docker-compose upを実行するときにコンテナにネットワークを定義しない場合、Dockerは自動的にブリッジネットワークを作成します。 このデフォルトドライバーネットワーク上では、すべてのコンテナがそれぞれのサービス名をホスト名として使用して通信できます。 カスタムネットワーク: これらのオプションにより、ユーザーは1つまたは2つのカスタムネットワーク、さらにはユーザー定義ネットワークを定義できます。 コンテナポートとdocker-compose.ymlファイル内でカスタムネットワークを定義できます。これらのネットワークにサービスを割り当てることによって、コンテナがどのように通信するかを制御します。 内部ネットワークは他のサービスからサービスを隔離します。 複数のネットワークは、一部のサービスが互いに通信できる一方で、他のサービスにそのようなアクセスを拒否します。 サービスディスカバリー: すべてのサービスには、構成上その名前と等しいホスト名が与えられます。 つまり、1つのコンテナ内で他のサービスの名前を使用して別のサービスを参照することができます。たとえば、ウェブサービスでは、データベースコンテナのIPを参照するにはdbを使用します。 ネットワークモード: ホストドライバー、ブリッジ、noneのいずれかを使用するためにネットワークモードを設定することもできます。 最も一般的に使用されるのはブリッジで、これはコンテナトラフィックを分離します。 Dockerネットワークドライバーとは何ですか? Dockerネットワークドライバーは、コンテナが互いにおよび他のコンテナやシステムとどのように接続し、通信するかを説明します。 さまざまなユースケースがあり、各ケースに対して異なるレベルの分離、接続性、パフォーマンスを提供するネットワークドライバーが適用されます。 各ネットワークドライバーを確認し、その使い方を説明します。 Dockerネットワークドライバの種類 ブリッジ(デフォルト) 内部Dockerネットワークは、単一のホストに基づいてコンテナを互いに通信させることができます。ネットワークを指定せずにコンテナを起動すると、Dockerはデフォルトのブリッジネットワークを使用します。 # Create a custom bridge network docker network create --driver bridge my_bridge_network # Run containers and connect to the custom network docker run -d --name container1 --network my_bridge_network busybox sleep 3600 docker run -d --name container2 --network my_bridge_network busybox sleep 3600 # Create a custom bridge network docker network create --driver bridge my_bridge_network # Run containers and connect to the custom network docker run -d --name container1 --network my_bridge_network busybox sleep 3600 docker run -d --name container2 --network my_bridge_network busybox sleep 3600 SHELL ここでは、サービス名を使用して通信できます。例としては、ping container1およびcontainer2などがあります。 Host ホストドライバーを使用すると、コンテナはホストネットワークスタックを直接共有するため、コンテナには独自のカスタムネットワーク隔離がありません。 # Run a container using the host network docker run -d --network host nginx # Run a container using the host network docker run -d --network host nginx SHELL NGINXコンテナはホストのIPおよびネットワークインターフェースを共有し、ネットワーク隔離をバイパスします。 Overlay これは、複数のホスト間でコンテナを相互接続し、主にDocker SwarmやKubernetes環境で使用され、物理的または仮想マシンをコンテナを介してセキュアに通信する仮想ネットワークを介して接続します。 # Create an overlay network for use in a Docker Swarm cluster docker network create -d overlay my_overlay_network # Deploy a service in the Swarm cluster docker service create --name web --network my_overlay_network nginx # Create an overlay network for use in a Docker Swarm cluster docker network create -d overlay my_overlay_network # Deploy a service in the Swarm cluster docker service create --name web --network my_overlay_network nginx SHELL これにより、複数のDockerホストにまたがるSwarmクラスター内でサービスが作成されます。 None noneドライバーは、コンテナのネットワーク機能を無効にします。 このコンテナはあらゆる種類の外部ネットワーク通信から隔離されます。 # Run a container with no network docker run -d --network none busybox sleep 3600 # Run a container with no network docker run -d --network none busybox sleep 3600 SHELL busyboxコンテナはインターネットにアクセスできず、他のコンテナや外界に対する呼び出しを送信できません。 Macvlan Macvlanドライバーは、コンテナが自身のMACアドレスを持つ物理デバイスとしてネットワークで表示されるようにし、物理ネットワークに直接アクセスできるようにします。 # Create a Macvlan network docker network create -d macvlan \ --subnet=192.168.1.0/24 \ --gateway=192.168.1.1 \ -o parent=eth0 macvlan_network # Run a container on the Macvlan network docker run -d --network macvlan_network busybox sleep 3600 # Create a Macvlan network docker network create -d macvlan \ --subnet=192.168.1.0/24 \ --gateway=192.168.1.1 \ -o parent=eth0 macvlan_network # Run a container on the Macvlan network docker run -d --network macvlan_network busybox sleep 3600 SHELL IPvlan IPvlanドライバーはMacvlanに似ていますが、Layer 2(MACアドレス)に依存するのではなくIPアドレスを割り当てることに重点を置いています。 複数のコンテナが同じネットワークインターフェースを共有できるようにします。 # Create an IPvlan network docker network create -d ipvlan \ --subnet=192.168.1.0/24 \ --gateway=192.168.1.1 ipvlan_network # Run a container on the IPvlan network docker run -d --network ipvlan_network busybox sleep 3600 # Create an IPvlan network docker network create -d ipvlan \ --subnet=192.168.1.0/24 \ --gateway=192.168.1.1 ipvlan_network # Run a container on the IPvlan network docker run -d --network ipvlan_network busybox sleep 3600 SHELL ホストのLayer 2 Ethernetインターフェイスをネットワークと共有しますが、異なるIPアドレスを持ちます。 カスタムプラグイン Dockerのカスタムプラグインは、Dockerがデフォルトとして提供する以上のネットワーク機能を提供するサードパーティまたはユーザーが開発したネットワークドライバーです。 サードパーティのDockerプラグインは、Software-Defined Networking(SDN)のような外部ネットワーキングソリューションフレームワークと統合し、セキュリティ、スケーラビリティ、およびマルチホストネットワーキングなどの機能を向上させます。 Dockerは、開発者およびベンダーにネットワークプラグインのための多用途なアーキテクチャを提供し、ネイティブドライバーと同じ方法でプラグインのインストールと使用を可能にします。 IronSecureDoc IronSecureDoc for Dockerは、開発者がコンテナ化アプリケーションにセキュアなドキュメント処理機能を追加するのを容易にします。 Dockerを使用すると、IronSecureDocを統合したASP.NET Coreアプリケーションを一貫した環境でカプセル化し、デプロイとスケーリングを容易にします。 それを稼働させるには、IronSecureDocライブラリを使用してASP.NET Coreアプリケーションを構築するDockerfileを作成し、動作させるために必要な他のインストールスクリプトや設定を追加することもできます。 これには、サービスの依存関係、環境変数、およびマッピングされたポートを含むdocker-compose.ymlファイルも含まれており、これへのアクセスを提供します。 したがって、文書のセキュリティに関わるタスクがより管理しやすくなり、ウェブアプリケーションが開発または本番で使用されるものを超えて効率的かつ効果的に動作するようになります。 Dockerの場合と同様にIronSecureDocをインストールおよび構成して、文書の暗号化、編集などが提供するすべての機能を享受する必要があります。 IronSecureDocのインストールと実行 リポジトリからIronSecureDoc Dockerイメージを取得するために、コマンドプロンプトまたは開いている端末ウィンドウで次のコマンドを実行してください。 # Pull IronSecureDoc Docker image docker pull ironsoftwareofficial/ironsecuredoc # Pull IronSecureDoc Docker image docker pull ironsoftwareofficial/ironsecuredoc SHELL Dockerリポジトリからイメージをプルした後、別のコマンドを使用して、実行中のコンテナとしてIronSecureDocを起動できます。 # Run a container with network isolation and environment variables docker container run --rm -p 8080:8080 \ -e IronSecureDoc_LicenseKey=<IRONSECUREDOC_LICENSE_KEY> \ -e ENVIRONMENT=Development \ -e HTTP_PORTS=8080 \ ironsoftwareofficial/ironsecuredoc:latest # Run a container with network isolation and environment variables 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 runコマンドは、IronSecureDocのコンテナインスタンスを起動します。 ネットワーク分離にはブリッジネットワークが想定されています。 また、このフラグ-p 8080:8080を使用してhttp://localhost:8080を通してコンテナ内で公開されたサービスへの外部アクセスを可能にします。 これは、コンテナのネットワークのポート8080で実行される内部サービスをホストのネットワークのポート8080に公開します。 デフォルトでは、コンテナはDockerのブリッジネットワーク上で実行されるため、他のコンテナや外界から分離していますが、ポートマッピングを通じて公開することで、ここではそれを行っています。 渡される環境変数(IronSecureDoc_LicenseKey、ENVIRONMENT、HTTP_PORTS)は、コンテナ内のアプリケーションの動作を設定します。 --rmフラグは、コンテナが停止したときに削除されるようにします。 このセットアップには、ブリッジネットワークがコンテナを分離し、内部的にサービスを接続する利点があり、一方でポートマッピングがホストマシンからコンテナのサービスへの外部トラフィックをブリッジアウトし、それによりアクセスを容易にします。 Dockerネットワークポートを使用したIronSecureDocの使用 IronSecureDocのREST APIは、Dockerでインストールおよび起動すると、文書の編集、認証、暗号化を可能にします。 より詳細な手順は、こちらで確認してください。 例えば、文書を暗号化のために提出するには、IronSecureDoc APIにPOSTリクエストを行うことができます。 # POST a document for encryption using cURL 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' # POST a document for encryption using cURL 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ネットワーキングは、アプリケーションの相互作用と他のアプリケーションおよび世界の他の部分との通信の制御に重要で、さまざまなアプリケーションニーズに対して異なるドライバーと設定を提供します。 デフォルトのブリッジネットワーク設定は基本的な分離を提供し、サービスをポートマッピングを通じてホストシステムに公開できるようにし、IronSecureDocアプリケーションで例示されるようにしています。 コンテナ化アプリケーションの管理と設定を容易にし、アプリケーションの運用の柔軟性と拡張性を向上させます。 IronSecureDocは、高度なドキュメント処理ツールであり、コンテナ化に関するDockerの能力を生かし、迅速かつ信頼性の高いアプリケーションのデプロイを可能にします。 これにより、複数の環境に対するサポートが確保され、Docker ネットワーキングと IronSecureDocがシームレスに統合し、アプリケーションの統合が容易でアクセスしやすく管理可能になります。 その結果、ワークフローが効率化され、効率が向上し、特に文書を処理する際の操作が改善されます。 これにより、最終的には開発およびデプロイ体験が強化され、現代のソフトウェアアプリケーションにとって貴重なソリューションとなります。 IronSecureDocライセンスに関する詳細情報については、こちらのページを参照してください。 Iron Softwareの多くの製品提供について詳しく知りたい場合は、このリンクをご覧ください。 よくある質問 Docker Compose ネットワークはどのようにサービスの通信を促進するか? Docker Compose ネットワークは Docker Compose アプリケーション内のサービスがホスト名としてサービス名を使用して通信できるようにし、同じ閉じ込められた環境内での相互作用を可能にする。 Docker Compose におけるデフォルトブリッジネットワークの役割は何か? Docker によって自動的に作成されるデフォルトのブリッジネットワークは、特定のネットワークが定義されていない場合でも、コンテナがサービス名をホスト名として使用して互いに通信することを可能にする。 カスタムネットワークは Docker Compose アプリケーションをどのように強化できるか? Docker Compose のカスタムネットワークは、隔離や選択的なサービス間の通信を可能にし、docker-compose.yml ファイル内で定義されることでアプリケーションを強化する。 Docker ネットワークドライバーにはどのような種類があり、それらの用途は何か? ブリッジ、ホスト、オーバーレイ、なし、Macvlan、Ipvlan などの Docker ネットワークドライバーは、隔離、接続性、パフォーマンスの異なるレベルを提供し、さまざまなアプリケーションのニーズに適している。 オーバーレイネットワークドライバーはどのようにマルチホスト通信をサポートするか? オーバーレイネットワークドライバーは、複数のホストにわたってコンテナを接続し、仮想ネットワークを通じてセキュアな通信を提供し、主に Docker Swarm や Kubernetes 環境で使用される。 コンテナ環境でのセキュアなドキュメント処理はなぜ重要か? IronSecureDoc を使用したようなセキュアなドキュメント処理は、Docker のネットワーキング機能を活用して、効率的なアプリケーションのカプセル化、デプロイ、スケーリングを可能にするため、コンテナ環境で重要である。 Docker を使用してセキュアなドキュメント処理をどのようにセットアップできるか? コンテナ内の IronSecureDoc などのツールをデプロイし、Dockerfile や docker-compose.yml を通じてネットワーク隔離のための環境を設定することにより、Docker でセキュアなドキュメント処理をセットアップできる。 Docker 内で REST API を使用してドキュメントを暗号化するためにはどのような手順が必要か? コンテナ化されたセットアップを使用して、cURL などのツールを使用し、ドキュメントとパラメーターをセキュアなドキュメント処理 API に POST リクエストを送信することにより、Docker 内で REST API を介してドキュメントを暗号化する。 Docker のネットワーキング機能はアプリケーションのスケーラビリティをどのように向上させるか? Docker のネットワーキング機能は、サービス間の相互作用と通信の効率的な管理を可能にし、ワークフローやデプロイ体験を合理化することでアプリケーションのスケーラビリティを向上させる。 既存の Docker システムに IronSecureDoc を統合するプロセスは何か? Docker コマンドを使用してセットアップを行い、ポートマッピングや環境変数を利用して一貫したデプロイとスケーリングを確保することにより、既存の Docker システムに IronSecureDoc を統合する。 カーティス・チャウ 今すぐエンジニアリングチームとチャット テクニカルライター Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。 関連する記事 更新日 7月 22, 2025 immich Docker Compose (開発者向けの仕組み) Immich Dockerは、Dockerコンテナ内でオープンソースのセルフホスト型写真およびビデオバックアップソリューションであるImmichのセットアップです。Dockerは、開発および配布に広く採用されている軽量プラットフォームです 詳しく読む 更新日 6月 22, 2025 Wazuh Docker Compose (開発者向けの仕組み) Wazuh Dockerは、WazuhセキュリティプラットフォームのDocker化された展開であり、セキュリティモニタリング、脅威検出、およびコンプライアンス管理の実装を簡素化し強化します 詳しく読む 更新日 6月 22, 2025 Coolify Docker Compose (開発者向けの仕組み) Coolifyは、アプリケーション、データベース、およびウェブサイトの展開と管理を簡素化することを目的としたオープンソースのセルフホストプラットフォームです。 詳しく読む Nextcloud Docker Compose(開発者向けの仕組み)Docker からイメージでコン...
更新日 7月 22, 2025 immich Docker Compose (開発者向けの仕組み) Immich Dockerは、Dockerコンテナ内でオープンソースのセルフホスト型写真およびビデオバックアップソリューションであるImmichのセットアップです。Dockerは、開発および配布に広く採用されている軽量プラットフォームです 詳しく読む
更新日 6月 22, 2025 Wazuh Docker Compose (開発者向けの仕組み) Wazuh Dockerは、WazuhセキュリティプラットフォームのDocker化された展開であり、セキュリティモニタリング、脅威検出、およびコンプライアンス管理の実装を簡素化し強化します 詳しく読む
更新日 6月 22, 2025 Coolify Docker Compose (開発者向けの仕組み) Coolifyは、アプリケーション、データベース、およびウェブサイトの展開と管理を簡素化することを目的としたオープンソースのセルフホストプラットフォームです。 詳しく読む