Dockerの優れた Getting Started ガイドを読んだばかりで、先に進む前に、基本的なDockerの用語を理解していることを確認したかっただけです。これらの定義は、ドキュメントである程度提供されていますが、これらのドキュメントの多くは、次の概念に具体的な形式を与えることなく、例に基づいています。
そのため、私の理解は次のとおりです。
だから私は尋ねます:私はこれらの基本的な用語の私の理解において正しいですか、それとも私は何らかの方法で誤解されていますか?
サービス:Dockerサービスはアプリケーションのさまざまなコンポーネントです...
サービスは、DockerSwarmが管理するイメージです。このイメージの3つのインスタンスを実行するように要求すると、docker swarmが実行します(可能な場合)。
Docker Hub は、実行できるさまざまなイメージをすべて表示します。
クラスター:Dockerクラスターは、2つ以上のDockerホストにまたがるアプリケーションの1つ以上のサービスを管理するSwarmがある場合です。クラスターは、サービスコンテナーが実行されているすべてのDockerホストを指すだけです。
ええクラスターは、ワーカー(サービスを実行する)またはマネージャー(ノード全体のサービスのスケジューリングを制御する)のいずれかであるノードで構成されます。ノードはワーカーとマネージャーの両方になることができることに注意してください。
私はまだマネージャーに頭を悩ませていますが、少なくとも3の奇数を目指すべきだと思います。そうしないと、マネージャーがいなくなった場合に問題が発生する可能性があります。
作成:Docker Composeは、サービス、スウォーム、スタックを管理するために使用されるツールです。
Docker composeは、イメージを組み合わせて動作するアプリケーションにするために使用されます。たとえば、フロントエンドプロキシ、Webサイト、バックエンドデータベースが含まれる場合があります。このテクノロジーは、特にDockerスウォームとは何の関係もありません...スウォーム全体にアプリケーションをデプロイするために使用できることを除いて( https://codefresh.io/blog/deploy-docker-compose-v3-swarm- mode-cluster / )
スタック:Dockerスタックは、SwarmManagerが複数を管理しているときに発生します...
スタックはDockerクラウドに使用されます。これはおそらくあなたが探しているものではありません:)
Docker swarmは、クラスタリングおよびオーケストレーションツールです。これは、複数のノードにまたがるコンテナーのスケジューリングに使用されます。複数のノードをクラスターとして組み合わせてから、このクラスターに「dockerrun」コマンドを送信できます。
Dockerスタックは、特定の環境でアプリケーションを構成するサービスのコレクションです。スタックファイルの拡張子はyamlです(ymlも)。