検索
ホームページ運用・保守Docker港湾労働者の三銃士とはどういう意味ですか?

docker の 3 人の剣士は、swarm、compose、machine を指します。 compose は、1 つ以上のコンテナーとアプリケーションを定義して実行するために使用されるツールです。Machine は、Docker のインストールを簡素化するコマンド ライン ツールです。Swarm は、Docker クラスターをネイティブにサポートするコミュニティによって提供されるツールです。

港湾労働者の三銃士とはどういう意味ですか?

このチュートリアルの動作環境: linux5.9.8 システム、docker-1.13.1 バージョン、Dell G3 コンピューター。

港湾コンテナ内の 3 人の剣士は、swarm、compose、machine です。

構成

1. 概要

実際の運用環境では、アプリケーションは多くの場合、多数のコンポーネントで構成されます。 services 、Docker のベスト プラクティスでは、コンテナーは 1 つのプロセスのみを実行するため、複数のマイクロサービスを実行するには複数のコンテナーを実行する必要があります。複数のコンテナを連携させるには、それらを管理し、これらのコンテナが相互にどのように関連するかを定義するための効果的なツールが必要です。コンポーズが誕生しました。

compose は、実行および適用する 1 つ以上のコンテナ (通常は複数) を定義して実行するために使用されるツールです。 compose を使用すると、コンテナー イメージの構築とコンテナーの実行を簡素化できます。

compose は、YAML ファイルを使用して複数のコンテナ間の関係を定義します。 docker-compose up は完全なアプリケーションを実行できます。基本的に、compose は YAML ファイルを docker コマンドのパラメータに解析し、対応する docker コマンド ライン インターフェイスを呼び出して、コンテナ化された方法でアプリケーションを管理します。コンテナ間の依存関係を解決することで、コンテナを順番に起動します。コンテナ間の依存関係は、YAML ファイルの links タグで指定されます。

2. compose 設定の概要

Compose は docker コマンド と docker-compose.yml をカプセル化したものです。デフォルトで使用されます。このファイルは各コマンドのパラメータを指定します。
簡単な例:

web:
  build: .
  ports:
  - 8080:80
  volumes:
  - . : /code
  links:
  - redis
redis:
  image: redis

この YAML ファイルは、Web と Redis という 2 つのサービスを定義します。サービスの名前はユーザーによってカスタマイズされます。 Web サービスを提供するイメージは Dockerfile から構築されます。Web サービスはポート 80 をリッスンし、それをホストのポート 8080 にマップします。ホストの現在のディレクトリはコンテナ内の /code ディレクトリにマウントされます。Web サーバーはRedis コンテナーにリンクすることにより、バックエンド Redis データベースを作成します。 Redis データベース サービスは、Redis イメージを実行することによって提供されます。

docker-compose.yml ファイルでは、定義された各サービスに build または image の少なくとも 1 つが含まれており、他のコマンドはオプションです。ビルド コマンドでは、Dockerfile を含むディレクトリを指定します。これは、相対ディレクトリまたは絶対ディレクトリのいずれでもかまいません。

docker-compose.yml ファイルの「ports」タグは docker run の「-p」オプションに対応し、「volumes」タグは docker run の「-v」オプションに対応します。 「links」タグは、docker run の「--links」オプションに対応します。

また、image はサービスのイメージを指定するために使用されます。

最後に、docker-compose.yml があるディレクトリで docker-compose up コマンドを実行すると、Web サービスと Redis サービスが正常に実行されます。

Machine

1. 概要

Docker Machine は、Docker のインストールを簡素化するコマンド ライン ツールです。 Docker は単純なコマンド ラインを通じて対応するプラットフォームにインストールでき、ユーザーは任意のホストで Docker コンテナを実行できる柔軟な機能を提供します。簡単に言えば、Docker マシンは Docker ホストと構成された Docker クライアントの組み合わせです。

技術的に言えば、Machine はフレームワークであり、比較的オープンです。仮想マシン サービスを提供するプラットフォームでは、このフレームワークに基づいてプラットフォーム用のドライバーが開発されていれば、Docker Machine をプラットフォームに統合し、プラットフォーム上で作成、削除、起動、停止などのアクションを実行できます。

#Docker Machine のアーキテクチャを図に示します

港湾労働者の三銃士とはどういう意味ですか?

2. Machine の基本概念とプロセス

Docker Machine は、まず仮想マシンとその上に Docker ホストを作成し、次に Docker クライアントを使用して Docker ホストと通信し、Docker ホスト上にイメージを作成してコンテナーを起動します。

Docker Machine を使用して仮想マシンを作成する場合、対応するドライバーを開発する必要がありますが、現在このマシンをサポートするドライバーには、Windows 上の VirtualBox ドライバー、VMware ドライバー、Hyper-V ドライバーが含まれます。さらに、Machine はクラウド ホストの作成もサポートしています。フレームワークの仕様に準拠したドライバーを開発すれば、Docker Machine は対応するプラットフォームをサポートできます。

Machine によって作成された Docker ホストの IP アドレスは、作成された仮想マシンの IP アドレスです。

Docker マシンと VirtualBox ドライバーを使用してローカル仮想マシンを作成し、Docker ホストを構築する実行プロセスは次のとおりです。

  • docker-machine create --driver virtualbox dev コマンドを実行します。このコマンドは、まず Docker クライアントと Docker ホスト間の通信用の CA 証明書を作成します。次に、VirtualBox 仮想マシンを作成し、通信用の TLS パラメーターを構成してネットワークを構成し、最後に Docker オペレーティング環境、つまり Docker ホストをデプロイします。

  • Docker クライアントで eval "$(docker-machine env dev)" コマンドを実行して、Docker ホスト通信に使用される環境変数を構成します。

  • docker 関連のコマンドを使用して、対応するコンテナーを作成または開始します。

Swarm

1. 概要

Swarm は Docker ですコミュニティ Docker クラスターをネイティブにサポートするツールを提供します。複数の Docker ホストで構成されるシステムを単一の仮想 Docker ホストに変換できます。 Swarm は 2 つの API を外部に提供します。 1 つは、Dokku、Compose、Krane、Flynn、Deis、Jenkins などの標準の Docker API であり、もう 1 つは、クラスター管理に使用される Swarm のクラスター管理 API です。

Swarm ツール自体はあまり成熟していないため、運用環境での使用はお勧めできません。
そして、Google のオープンソース Kubernetes は、現在、コンテナ エコシステムで最も人気のあるオーケストレーションおよびデプロイ ツールです。
Kubernetes のアーキテクチャは、複数の Minion ノードを備えたマスター サーバーに基づいています。 K8sについてはまだ触れていないので、もう少し詳しくなってからここにまとめたいと思います。

K8s アーキテクチャ ブロック図

港湾労働者の三銃士とはどういう意味ですか?

コンポーネントの説明:

  • Master: マスター サーバー、管理プロセスを実行します。 kebernetes (API サービス、バックアップ コントローラー、スケジューラーなどを含む)
  • Minion: Kubelet サービスと Docker エンジンのホスト。Minion はマスターからの指示を受け取ります。
  • Kubelet: Kubernetes ノードレベルのマネージャー、Minion 上で実行されます。
  • Pod: 複数のコレクションこれらのコンテナは同じ Minion 上で実行されます。ポッドは K8s の最小の管理単位です
  • レプリケーション コントローラー: ポッドのライフ サイクルを管理します
  • サービス: コンテナーの公開を許可するサービスとポート、および外部エージェントを定義します。通信と対話
  • Kubecfg: コマンド ライン インターフェイス、マスターと対話し、アプリケーション サービスのデプロイメントと管理を要求します
##推奨学習: 「

docker ビデオ チュートリアル##」 #"

以上が港湾労働者の三銃士とはどういう意味ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
LinuxでDockerを使用:包括的なガイドLinuxでDockerを使用:包括的なガイドApr 12, 2025 am 12:07 AM

LinuxでDockerを使用すると、開発と展開の効率が向上する可能性があります。 1。Dockerのインストール:スクリプトを使用して、ubuntuにDockerをインストールします。 2.インストールの確認:sudodockerrunhello-worldを実行します。 3。基本的な使用法:NginxコンテナDockerrun-Namemy-Nginx-P8080を作成します:80-Dnginx。 4。高度な使用法:カスタム画像を作成し、DockerFileを使用してビルドして実行します。 5。最適化とベストプラクティス:マルチステージビルドとドッケルコンポスを使用して、DockerFilesを作成するためのベストプラクティスに従ってください。

Docker監視:メトリックの収集とコンテナの健康の追跡Docker監視:メトリックの収集とコンテナの健康の追跡Apr 10, 2025 am 09:39 AM

Docker監視の中核は、主にCPUの使用、メモリ使用、ネットワークトラフィック、ディスクI/Oなどのインジケーターを含む、コンテナの動作データを収集および分析することです。 Prometheus、Grafana、Cadvisorなどのツールを使用することにより、コンテナの包括的な監視とパフォーマンスの最適化を実現できます。

Docker Swarm:スケーラブルで回復力のあるコンテナクラスターの構築Docker Swarm:スケーラブルで回復力のあるコンテナクラスターの構築Apr 09, 2025 am 12:11 AM

DockerSwarmは、スケーラブルで非常に利用可能なコンテナクラスターを構築するために使用できます。 1)dockerswarminitを使用して群れクラスターを初期化します。 2)swarmクラスターに参加して、dockerswarmjoinを使用します。 3)DockerServiceCreate-Namemy-Nginxを使用してサービスを作成します - Replicas3nginx。 4)dockerstackdeploy-cdocker-compose.ymlmyAppを使用して複雑なサービスを展開します。

Kubernetesを備えたDocker:エンタープライズアプリケーション用のコンテナオーケストレーションKubernetesを備えたDocker:エンタープライズアプリケーション用のコンテナオーケストレーションApr 08, 2025 am 12:07 AM

DockerとKubernetesを使用して、エンタープライズアプリケーションのコンテナオーケストレーションを実行する方法は?次の手順で実装します。Dockerイメージを作成し、DockerHubにプッシュします。 Kubernetesで展開とサービスを作成して、アプリケーションを展開します。 Ingressを使用して外部アクセスを管理します。パフォーマンスの最適化と、マルチステージの構築やリソースの制約などのベストプラクティスを適用します。

Dockerのトラブルシューティング:一般的な問題の診断と解決Dockerのトラブルシューティング:一般的な問題の診断と解決Apr 07, 2025 am 12:15 AM

Docker FAQは、次の手順で診断および解決できます。1。コンテナのステータスとログを表示、2。ネットワーク構成を確認します。これらの方法により、Dockerの問題を迅速に配置して固定し、システムの安定性とパフォーマンスを向上させることができます。

Dockerインタビューの質問:DevOpsエンジニアリングインタビューをエースDockerインタビューの質問:DevOpsエンジニアリングインタビューをエースApr 06, 2025 am 12:01 AM

Dockerは、DevOpsエンジニアにとって必須のスキルです。 1.Dockerは、アプリケーションとその依存関係をコンテナにパッケージ化することにより、分離と移植性を実現するオープンソースのコンテナ化されたプラットフォームです。 2. Dockerは、名前空間、コントロールグループ、フェデレーションファイルシステムで動作します。 3。基本的な使用には、コンテナの作成、実行、管理が含まれます。 4.高度な使用法には、DockerComposeを使用してマルチコンテナーアプリケーションを管理することが含まれます。 5.一般的なエラーには、コンテナ障害、ポートマッピングの問題、データの持続性の問題が含まれます。デバッグスキルには、ログの表示、コンテナの入り、および詳細情報の表示が含まれます。 6.パフォーマンスの最適化とベストプラクティスには、画像の最適化、リソースの制約、ネットワーク最適化、DockerFileを使用するためのベストプラクティスが含まれます。

Dockerセキュリティ硬化:容量から容器を保護しますDockerセキュリティ硬化:容量から容器を保護しますApr 05, 2025 am 12:08 AM

Dockerセキュリティの強化方法は次のとおりです。1。-cap-dropパラメーターを使用してLinux機能を制限します。2。読み取り専用コンテナを作成します。これらの戦略は、脆弱性の露出を減らし、攻撃者の機能を制限することにより、コンテナを保護します。

Dockerボリューム:コンテナ内の永続的なデータの管理Dockerボリューム:コンテナ内の永続的なデータの管理Apr 04, 2025 am 12:19 AM

Dockervolumeは、コンテナを再起動、削除、または移行すると、データが安全であることが保証されます。 1。ボリュームの作成:Dockervolumecreatemydata。 2。コンテナとマウントボリュームを実行します:Dockerrun-It-Vmydata:/app/dataubuntubash。 3.高度な使用には、データ共有とバックアップが含まれます。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

MantisBT

MantisBT

Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター