Docker は、アプリケーションの構築、公開、実行に使用できるオープンソースのコンテナー テクノロジーです。 Docker イメージを使用すると、ユーザーは事前に構築されたアプリケーションやコンテナ環境を簡単かつ迅速にダウンロードしてインストールできます。
Docker イメージは複数のレイヤー (レイヤー) で構成されており、各レイヤーにはファイル システムのスナップショットが含まれています。ユーザーが Docker イメージをプルするとき、実際には Docker レジストリからイメージのすべてのレイヤーを取得し、それらを組み合わせて完全な Docker イメージを構築します。
それでは、Docker イメージのローカル ストレージの場所はどこでしょうか?この記事では詳しく紹介していきます。
- Docker イメージ リストの表示
まず、現在のローカル Docker イメージ リストを表示する必要があります。ターミナルに次のコマンドを入力します。
docker images
実行後、イメージ ID、イメージ名、イメージ ラベル、イメージ サイズ、その他の情報を含む、マシン上のすべての Docker イメージのリストが表示されます。次の図に示すように:
#上の図からわかるように、各イメージには一意の ID、名前、およびいくつかのタグ (バージョンとも呼ばれます) があります。このうち、REPOSITORYフィールドはイメージの名前を表し、TAGフィールドはイメージのラベルを表し、IMAGE IDフィールドはイメージの一意の識別子です。
- Docker イメージの保存場所の表示
Docker では、各イメージは複数のレイヤー (レイヤー) で構成されます。したがって、ユーザーが Docker イメージをダウンロードまたはビルドすると、実際にはイメージのすべてのレイヤーがローカル ストレージにダウンロードされます。
Linux システムでは、Docker イメージは実際には /var/lib/docker
ディレクトリに保存されます。ターミナルに次のコマンドを入力します。
sudo ls -l /var/lib/docker/
実行後、ターミナルには /var/lib/docker/ ディレクトリ内のすべてのファイルとフォルダーのリストが表示されます。このうち、/var/lib/docker/image
フォルダーは、Docker がイメージを保存する主な場所です。以下の図に示すように:
/var/lib/docker/image/overlay2/imagedb/content/sha256
ディレクトリに、すべての既存のダウンロードされた Docker イメージ (イメージ ID で名前が付けられます)。これはすべてのレイヤーの保存場所です。各イメージ ID ディレクトリには、このレイヤーの保存場所を表す「real」または「diff」という名前のファイルがあります。
- イメージ レイヤーの保存場所の確認
Docker イメージの各レイヤーについて、次のコマンドを実行することで保存場所を確認できます:
docker history <image_name>:<tag>
たとえば、nginx イメージの場合、コマンド
docker history nginx:latest
を実行すると、次の結果が出力されます。
IMAGE CREATED CREATED BY SIZE COMMENT 84cf8d0a2e04 3 weeks ago /bin/sh -c #(nop) CMD ["nginx" "-g" "daemon… 0B <missing> 3 weeks ago /bin/sh -c #(nop) STOPSIGNAL SIGTERM 0B <missing> 3 weeks ago /bin/sh -c #(nop) EXPOSE 80 0B <missing> 3 weeks ago /bin/sh -c ln -sf /dev/stdout /var/log/nginx… 22B <missing> 3 weeks ago /bin/sh -c set -x && apt-get update && ap… 68.2MB <missing> 3 weeks ago /bin/sh -c #(nop) ENV NJS_VERSION=2.1.0.6 0B <missing> 3 weeks ago /bin/sh -c #(nop) ENV NGINX_VERSION=1.16.1 0B <missing> 4 weeks ago /bin/sh -c #(nop) LABEL maintainer=NGINX Do… 0B <missing> 4 weeks ago /bin/sh -c #(nop) CMD ["bash"] 0B <missing> 4 weeks ago /bin/sh -c #(nop) ADD file:7fbfce9f6a99e63a5… 63.2MB
このうち、各レイヤーの SIZE フィールドは、nginx イメージが占める実際のスペースを示します。層。このコマンドの出力結果の最初の列は、Docker イメージの各レイヤーの ID であり、イメージの各レイヤーを上から下に表します。
このコマンドの出力に基づいて、各レイヤーの具体的な保存場所を確認できます。たとえば、上記のコマンドの出力では、最後の列はレイヤーの説明情報であり、レイヤーの元のコマンドとパラメーターが含まれています。
nginx イメージの最初のレイヤー (ID は「84cf8d0a2e04」) の場合、このレイヤーの CMD は「CMD ["nginx" "-g" "daemon..."」です。これは、 nginx サービス; 以下の各層には、他の構成またはコマンドが含まれています。したがって、Docker イメージの各レイヤーがどこに保存されているかを大まかに推測できます。
- 概要
上記のコマンドを使用すると、ユーザーは Linux システムでローカルに保存された Docker イメージを表示できます。 Docker イメージのレイヤーは、イメージ ID をフォルダー名として /var/lib/docker/image/overlay2/imagedb/content/sha256
ディレクトリに保存されます。各レイヤーはそれぞれ「実際の」ファイルまたは「差分」ファイルに保存されます。
ミラーリングの各レイヤーの保存場所については、dockerhistory
コマンドを実行してレイヤーの保存場所を表示し、出力結果でレイヤーの説明情報を探すことができます。レイヤーの保存場所を大まかに推測します。
Docker イメージとコンテナーを使用する場合、Docker イメージの保存場所を理解すると、ローカルのストレージ領域をより適切に管理したり、Docker イメージとコンテナーをバックアップおよび復元したりできるようになります。
以上がDocker イメージがプルされて配置された場所を確認するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

実際のプロジェクトのDockerのアプリケーションシナリオには、展開の簡素化、マルチコンテナーアプリケーションの管理、パフォーマンスの最適化が含まれます。 1.Dockerは、dockerfileを使用してnode.jsアプリケーションを展開するなど、アプリケーションの展開を簡素化します。 2。DockerComposeは、マイクロサービスアーキテクチャのWebやデータベースサービスなどのマルチコンテナーアプリケーションを管理しています。 3.パフォーマンス最適化は、マルチステージ構造を使用して画像サイズを縮小し、健康チェックを通じてコンテナのステータスを監視します。

小さなプロジェクトまたは開発環境でDockerを選択し、大規模なプロジェクトまたは生産環境でKubernetesを選択します。 1.ドッカーは、迅速な反復とテストに適しています。2。Kubernetesは、大規模なアプリケーションの管理と拡張に適した強力なコンテナオーケストレーション機能を提供します。

Linuxは、豊富なツールとコミュニティサポートを提供するネイティブプラットフォームであるため、LinuxでDockerが重要です。 1. docker:sudoapt-getupdateとsudoapt-getinstalldocker-cedocker-ce-clicotainerd.ioを使用します。 2。コンテナの作成と管理:Dockerrun-D-Namemynginx-P80:80NginxなどのDockerrunコマンドを使用します。 3。DockerFileを書き込み:画像サイズを最適化し、マルチステージ構造を使用します。 4。最適化とデバッグ:DockerLogsとDockerexを使用します

Dockerはコンテナ化ツールであり、Kubernetesはコンテナオーケストレーションツールです。 1. Dockerパッケージアプリケーションとその依存関係は、Docker対応環境で実行できるコンテナに依存します。 2。Kubernetesはこれらのコンテナを管理し、自動展開、スケーリング、管理を実装し、アプリケーションを効率的に実行します。

Dockerの目的は、アプリケーションの展開を簡素化し、コンテナ化技術を通じてさまざまな環境でアプリケーションが一貫して実行されるようにすることです。 1)Dockerは、アプリケーションと依存関係をコンテナにパッケージ化することにより、環境の違いの問題を解決します。 2)DockerFileを使用して画像を作成して、アプリケーションがどこでも一貫して実行されることを確認します。 3)Dockerの作業原則は画像とコンテナに基づいており、Linuxカーネルの名前空間とコントロールグループを使用して、分離とリソース管理を実現します。 4)基本的な使用法には、DockerHubからの画像の引き込みと実行が含まれます。高度な使用法には、DockerComposeを使用したマルチコンテナーアプリケーションの管理が含まれます。 5)画像構築の故障やコンテナの障害などの一般的なエラーは、ログやネットワーク構成を介してデバッグできます。 6)パフォーマンス最適化構造

Ubuntu、Centos、およびDebianにDockerをインストールして使用する方法は異なります。 1)ubuntu:aptパッケージマネージャーを使用します。コマンドはsudoapt-getupdate && sudoapt-getinstalldocker.ioです。 2)Centos:Yum Package Managerを使用すると、Dockerリポジトリを追加する必要があります。コマンドは、sudoyumininstall-yyum-utils && sudoyum-config-manager - add-repohttps://download.docker.com/linです

LinuxでDockerを使用すると、開発効率が向上し、アプリケーションの展開を簡素化できます。 1)Ubuntu画像を引く:dockerpullubuntu。 2)ubuntuコンテナを実行:Dockerrun-itubuntu/bin/bash。 3)nginxを含むDockerFileを作成します:fromubuntu; runapt-getupdate && apt-getinstall-ynginx; expose80。 4)画像の作成:dockerbuild-tmy-nginx。 5)コンテナの実行:Dockerrun-D-P8080:80

Dockerは、Linuxのアプリケーションの展開と管理を簡素化します。 1)Dockerは、アプリケーションとその依存関係を軽量でポータブルコンテナにパッケージ化するコンテナ化されたプラットフォームです。 2)Linuxでは、DockerはCgroupと名前空間を使用して、コンテナの分離とリソース管理を実装します。 3)基本的な使用には、画像の引き込みと実行容器が含まれます。 DockerComposeなどの高度な使用は、マルチコンテナーアプリケーションを定義できます。 4)一般的に使用されるDockerLogsとDockerexecコマンドをデバッグします。 5)パフォーマンスの最適化は、マルチステージの構造により画像サイズを縮小することができ、DockerFileをシンプルに保つことがベストプラクティスです。


ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

ZendStudio 13.5.1 Mac
強力な PHP 統合開発環境

Dreamweaver Mac版
ビジュアル Web 開発ツール

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

SecLists
SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

ホットトピック









