Dockerクライアントの使用 サーバー

2019年12月24日)

Docker forWindowsまたはDockerと呼ばれるソフトウェアをインストールした後Macの場合、このプログラム内のオペレーティングシステムに応じて、このブログで説明する2つの非常に重要なツールがあります。

$ docker version

出力には、インストールされているDockerのバージョンに関する詳細情報が表示されます:

このパッケージに含まれる最初のツールは、 Dockerクライアント Dockerクライアントまたは CLIとも呼ばれますは、あなたと私が開発したプログラムです。 e端末からかなりの量の操作を行います。

端末にコマンドを入力して、Dockerクライアントに発行します。コマンドを取得して、それらをどう処理するかを理解します。

Dockerクライアント自体はコンテナや画像では実際には何もしません。代わりに、 Dockerクライアントは、実際には、別のソフトウェアとの対話を支援する一種のツールまたはポータルにすぎません。 Dockerサーバーと呼ばれるこのDockerforWindowsまたはMacパッケージに含まれています。

これは頻繁に呼ばれることもあります Dockerデーモン。 このプログラムは、実際のツールまたは実際のソフトウェアであり、コンテナの画像を作成し、コンテナのアップロード画像を維持し、世界中で想像できるほぼすべてのことを実行します。 docker。

つまり、あなたと私がコマンドを発行するのはdockerクライアントです。これは、私たちが舞台裏でやり取りするものです。

このクライアントはDockerサーバーとやり取りしています。あなたと私がDockerサーバーに直接連絡することは決してありません。

これは舞台裏で実行しているようなものです。

~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~

ここで、Dockerを使用して最初の種類の意味のあるコマンドを書きたいと思います。クライアントまたはDockerCLIの場合、ここで非常に簡単なコマンドを実行してから、そのコマンドが実行されたときに発生した非常に具体的なアクションのフローを実行します。

これがコマンドです。ターミナルで

ローカルで画像hello-worldを見つけることができないと表示されます。

それでは、コマンドを正しく実行したときに何が起こったのかを説明するのに役立ついくつかの図を見てみましょう。

ターミナルで、コマンドを実行します。

docker run hello–world

どのように発生したか1

これでDockerクライアントまたはDockerCLIが起動します。

ここでも、DockerCLIがコマンドの取得を担当します。それらを処理してから、Dockerサーバーと呼ばれるものにコマンドを伝達します。Dockerサーバーが実際に手間のかかる作業を担当します。

コマンドを実行したときドッカーランヘルlo-world 。つまり、hello-worldという名前のイメージを使用して新しいコンテナーを起動したかったのです。hello-worldイメージには、表示されるメッセージを印刷することだけを目的とした小さなプログラムが含まれています。ここにあります。

それが唯一の目的ですそのイメージ。

そのコマンドを実行してDockerサーバーに発行すると、バックグラウンドで一連のアクションが非常に迅速に発生しました。

Dockersサーバーは、私たちが hello-world というイメージを使用して新しいコンテナを起動しようとしています。 Dockerサーバーが最初に行ったのは、 hello-world 画像または hello-world ファイル。 (上の画像に記載されている最初のステップ-どのように発生したか1)。そこで、 Dockerサーバーは画像と呼ばれるものを調べました。キャッシュ。

しかし、画像キャッシュが現在空であるDockerをパーソナルコンピューターにインストールしました。以前にダウンロードした画像はありません。そのため、イメージキャッシュが空であったため、Dockerサーバーは DockerHubという無料のサービスにアクセスすることにしました。 (上の画像に記載されている2番目のステップ-どのように発生したか1)

T Docker Hubは、無料のパブリックイメージのリポジトリであり、パソコンから自由にダウンロードして実行できます。

サーバーは、Dockerに連絡します。ハブと言ったねえ、私は hello-world という画像を探しています。

持っていますか?もちろん、DockerHubは

どのように発生したか2

Dockerサーバーがこれをダウンロードしました。 hello-world ファイルを作成し、パーソナルコンピューターに保存しました。このイメージキャッシュでは、Docker Hubから再ダウンロードしなくても、将来のある時点で非常に迅速に再実行できます。 (上の画像に記載されている3番目のステップ-どのように発生したか2)

その唯一の目的は、1つの非常に特定のプログラムを実行することです。これにより、Dockerサーバーは基本的に、その単一のファイルをメモリにロードしてコンテナを作成します。その後、その中で単一のプログラムを実行しました。その単一のプログラムの目的は、以下に表示されるメッセージを印刷することでした。

このドッカー実行コマンド。

DockerHubにアクセスし、イメージを取得してから、そのイメージからコンテナーを作成します。

ここで、気付くことが1つあります。

docker run hello-world コマンドをもう一度実行すると興味深いものになります。初めて見たのに、ダウンロードしたり、含まれている、または画像がローカルに見つからないというメッセージが表示されないことに気付くでしょう。

これは、すでにパソコンの画像キャッシュにダウンロードしているためです。したがって、ここでの大きな教訓は、これらの公開画像を初めて利用しようとすると、少しダウンロードする必要があるということです。

しかし、その後は将来的に、イメージは既にコンピュータにダウンロードされているため、そのイメージを使用してコンテナをより迅速に起動できます。

お読みいただき、ありがとうございます。 😊