Docker イメージ管理の一般的な操作コード例

Docker イメージ管理の一般的な操作コード例

ミラーリングも Docker のコアコンポーネントの 1 つです。ミラーリングはコンテナ操作の基盤であり、コンテナは操作後のミラーリングの形式です。一般的に、イメージとは、プログラムの実行に必要な環境とコードを含む読み取り専用ファイルです。階層化ファイル システムを使用して、読み取り/書き込みレイヤーの形式で各レイヤーに変更を加え、元の読み取り専用ファイルに書き込みます。

画像とコンテナの関係

前回の記事では、読者にコンテナの使い方を紹介しました。注意深い読者は、コンテナを起動または作成するときに、ミラー名または ID を指定する必要があることに気付いたかもしれません。実際、このときにミラーが果たす役割は、コンテナのテンプレートです。異なるミラーは、異なるコンテナを構築できます。次のコマンド:

docker run -itd --name nginx nginx

コマンドの最後の nginx は、コンテナの作成に必要なテンプレートを示します。

ミラーアーキテクチャ

イメージの最下層はブートファイルシステム(bootfs)イメージです。bootfs の上層はルートイメージと呼ばれます。一般的に、ルートイメージは Ubuntu、CentOS などのオペレーティングシステムです。ユーザーのイメージはルートイメージ上に構築する必要があります。ルートイメージの上に、ユーザーはさまざまな他のイメージを構築できます。上記の紹介から、ミラーの本質は実際にはファイルのコレクションであり、レイヤーごとの構造は Git に多少似ていることがわかります。

ミラーリングのためのコピーオンライトメカニズム

docker run コマンドでコンテナを指定してイメージを作成すると、実際にはイメージ上に空の読み取りおよび書き込み可能なファイル システム階層が作成されます。このファイル システム階層は一時イメージとして扱うことができ、コマンドで参照されるテンプレート イメージは親イメージと呼ぶことができます。親イメージの内容は読み取り専用モードでマウントされます。コンテナーは共有された親イメージの内容を読み取ります。ユーザーによるすべての変更はファイル システム内に保存され、親イメージには影響しません。もちろん、ユーザーは他の手段を使用して、変更を親イメージに永続的に保存することもできます。これについては後で詳しく説明します。

チェック

Docker イメージ

ユーザーはdocker imagesコマンドを通じてすべてのローカルイメージを表示できます。


ここには 5 つのパラメータがあります。

1.リポジトリ

ウェアハウス名。ウェアハウスは通常、同じタイプのイメージを保存するために使用されます。ウェアハウスの名前は作成者によって指定されます。指定されていない場合は、 .一般的に、倉庫名には以下のようなさまざまな形式があります。

  • [namespace\ubuntu]: このリポジトリ名は、\ で区切られた名前空間と実際のリポジトリ名で構成されます。開発者が Docker Hub でユーザーを作成すると、ユーザー名がデフォルトの名前空間になります。この名前空間は、Docker Hub に登録されているさまざまなユーザーまたは組織を区別するために使用されます (GitHub でのユーザー名の役割に似ています)。読者が自分のイメージを Docker Hub にアップロードして他の人が使用できるようにするには、名前空間を指定する必要があります。
  • [ubuntu]: このタイプのリポジトリにはリポジトリ名のみがあります。名前空間のないこのタイプのリポジトリ名の場合、最上位の名前空間に属していると考えられます。この空間のリポジトリは公式イメージにのみ使用され、Docker 担当者によって管理されますが、一般的には開発とメンテナンスのためにサードパーティに許可されています。もちろん、ユーザーは自分で作成したイメージにもこの命名方法を使用できますが、共有のために Docker Hub にアップロードすることはできません。
  • [hub.c.163.com/library/nginx]: この URL パス指定方法は、一般的に Docker Hub 上にないイメージに名前を付ける場合に使用されます。たとえば、サードパーティのサービス プロバイダーによって提供されるイメージや、開発者自身が構築したイメージ センターはすべてこの方法で名前を付けることができます。

2.TAGは同じリポジトリの異なるイメージを区別するために使用され、デフォルトは最新です

3.画像IDは画像の一意の識別子です

4.CREATED 画像の作成時刻

5.SIZEは画像サイズを示します

すべてのローカル イメージを表示するには、docker images コマンドを使用します。イメージが多すぎる場合は、次のようにワイルドカードを使用して一致させることができます。


イメージの詳細情報を表示する必要がある場合は、上記のdockerinspectコマンドを使用してダウンロードを表示することもできます。

ユーザーが docker run コマンドを実行すると、Docker Hub から関連するイメージが自動的にダウンロードされます。これについては再度説明しません。開発者は、次のように search コマンドを使用して、Docker Hub で要件を満たすイメージを検索することもできます。


で:

  • NAME: 画像の名前を示します
  • 説明: 画像の簡単な説明。
  • 星: 画像に対するユーザーの評価を示します。評価が高いほど、安全に使用できます。
  • OFFICIAL: 公式画像ですか?
  • AUTOMATED: 自動ビルドを使用するかどうか

docker run コマンドを実行した後のダウンロード速度は少し遅くなります。コマンドを早く実行したい場合は、docker pull コマンドを使用して実行前にイメージをダウンロードしてから実行することができます。


次のようにコマンドを実行します。

消去

イメージは docker rmi コマンドで削除できます。パラメータはイメージ ID またはイメージ名です。次のように、スペースで区切られた複数のパラメータを指定できます。

場合によっては、イメージを削除できないことがあります。ほとんどの場合、これはイメージがコンテナに依存しているためです。この場合、まずコンテナを削除してから、イメージを削除する必要があります。

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • .NETCore Dockerはコンテナ化とプライベートイメージリポジトリ管理を実装します
  • Docker プライベートリポジトリの管理とローカルリポジトリ内のイメージの削除
  • Dockerのローカルイメージ作成方法の分析
  • Tomcat イメージをインストールして Docker に Web プロジェクトをデプロイする方法を簡単に説明します。
  • Spring Boot パッケージング Docker イメージの最もシンプルな実装
  • Spring Boot プロジェクトで Docker イメージを生成し、コンテナのデプロイを完了する方法
  • Docker イメージ + nginx を使用して Vue プロジェクトをデプロイする方法
  • Dockerイメージを素早くデプロイして実行する最新のIDEAプロセスの詳細な説明
  • DockerHubイメージリポジトリの使い方の詳しい説明

<<:  JavaScript でモバイル モーダル ボックスの効果を実現

>>:  Mysqlはフィールドスプライシングのための3つの関数を実装している

推薦する

私が良いと思うクールなデザインサイトをいくつかまとめてみました。

ウェブサイトをデザインするにはインスピレーションが必要です。良いインスピレーションを得るには、より多...

知っておくべきHTML最適化テクニック

Web ページのパフォーマンスを向上させるために、多くの開発者は、JavaScript、画像の最適化...

適応分析と応答分析の違いを専門用語で詳しく説明

日々の開発経験と関連するオンライン情報に基づいて、アダプティブとレスポンシブの違いをシンプルでわかり...

MySQL ロックの知識ポイントのまとめ

ロックの概念①. 現実世界では、鍵は外の世界から身を隠したいときに使う道具です。 ②. コンピュータ...

vue-cropperプラグインは、画像キャプチャとアップロードコンポーネントのカプセル化を実現します。

vue-cropperプラグインをベースにした画像キャプチャとアップロードコンポーネントをカプセル...

スパンの最小高さを定義するソリューションは効果がありません

span タグは HTML ウェブページを作成するときによく使用されますが、このタグの使い方がよくわ...

Linuxの読み取りコマンドの使用

1. コマンドの紹介read コマンドは、シェルの組み込みコマンドで、標準入力または -u オプショ...

パスワードログインなしのLinux構成スタンドアロンおよびフルディストリビューションの詳細なチュートリアル

目次1: 単一マシンのパスワードフリーログイン構成1. 仮想マシンのホスト名を設定する2. 仮想マシ...

docker compose を使用して FastDfs ファイル サーバーをインストールする詳細な例

ドッカーの作成 バージョン: '2' サービス: fastdfsトラッカー: ホスト...

Element PlusはAffixを実装します

目次1. コンポーネントの紹介2. ソースコード分析2.1 テンプレート2.2 スクリプト2.3 実...

HTML の順序なしリストタグと順序付きリストタグの使用例

1. 上部と下部のリストタグ: <dl>..</dl>:上dt下層dd: カ...

CentOS7でパーティションのサイズを変更する方法

昨日、ある人のシステムのインストールを手伝ったのですが、自動パーティション分割をクリックするのを忘れ...

JavaScript カラービューア

この記事では、カラービューアを実装するためのJavaScriptの具体的なコードを参考までに紹介しま...

HTML+CSS+JSはナビゲーションバーのスクロールグラデーション効果を実現します

目次まず効果を見てみましょう:成し遂げる:要約:まず効果を見てみましょう: 成し遂げる: 1. ナビ...