削除ローカルミラードッカー

ローカルミラーを削除したい場合は、使用できるdocker image rm形式でコマンドを:

$ docker image rm [选项] <镜像1> [<镜像2> ...]

ID、イメージ名、要約削除鏡付き

ここでは、<镜像>それはかもしれ镜像短 ID镜像长 ID镜像名または镜像摘要

例えば、我々は非常に少ないミラーを持っています:

$ docker image ls
REPOSITORY                  TAG                 IMAGE ID            CREATED             SIZE
centos                      latest              0584b3d2cf6d        3 weeks ago         196.5 MB
redis                       alpine              501ad78535f0        3 weeks ago         21.03 MB
docker                      latest              cf693ec9b5c7        3 weeks ago         105.1 MB
nginx                       latest              e43d811ce2f4        5 weeks ago         181.5 MB

我々はまた、既知のフル画像ID、使用することができます长 IDミラーを削除することを。長いIDを使用することができ、スクリプトを使用しますが、手動入力があまりにも疲れたとき、とても多くの時間がある短 ID画像を削除します。docker image lsデフォルトはすでにそれを区別するために十分な長さ、他のミラーで、短いIDで、一般的に最初の3つの文字の上に表示されます。

我々は削除する場合たとえば、ここでは、redis:alpineミラーを、あなたが行うことができます。

$ docker image rm 501
Untagged: redis:alpine
Untagged: redis@sha256:f1ed3708f538b537eb9c2a7dd50dc90a706f7debd7e1196c9264edeea521a86d
Deleted: sha256:501ad78535f015d88872e13fa87a828425117e3d28075d0c117932b05bf189b7
Deleted: sha256:96167737e29ca8e9d74982ef2a0dda76ed7b430da55e321c071f0dbff8c2899b
Deleted: sha256:32770d1dcf835f192cafd6b9263b7b597a1778a403a109e2cc2ee866f74adf23
Deleted: sha256:127227698ad74a5846ff5153475e03439d96d4b1c7f2a449c7a826ef74a2d2fa
Deleted: sha256:1333ecc582459bac54e1437335c0816bc17634e131ea0cc48daa27d32c75eab3
Deleted: sha256:4fc455b921edf9c4aea207c51ab39b10b06540c8b4825ba57b3feed1668fa7c7

また、使用することができ镜像名ていること、<仓库名>:<标签>ミラーを削除するには、。

$ docker image rm centos
Untagged: centos:latest
Untagged: centos@sha256:b2f9d1c0ff5f87a4743104d099a3d561002ac500db1b9bfa02a783a46e0d366c
Deleted: sha256:0584b3d2cf6d235ee310cf14b54667d889887b838d3f3d3033acd70fc3c48b8a
Deleted: sha256:97ca462ad9eeae25941546209454496e1d66749d53dfa2ee32bf1faabd239d38

もちろん、より正確には、使用することです镜像摘要削除ミラーを。

$ docker image ls --digests
REPOSITORY                  TAG                 DIGEST                                                                    IMAGE ID            CREATED             SIZE
node                        slim                sha256:b4f0e0bdeb578043c1ea6862f0d40cc4afe32a4a582f3be235a3b164422be228   6e0c4c8e3913        3 weeks ago         214 MB

$ docker image rm node@sha256:b4f0e0bdeb578043c1ea6862f0d40cc4afe32a4a582f3be235a3b164422be228
Untagged: node@sha256:b4f0e0bdeb578043c1ea6862f0d40cc4afe32a4a582f3be235a3b164422be228

タグなし和削除されました

これらのコマンドを実行し、上記の情報の出力を見れば、あなたは、削除動作が2つのカテゴリに分類されてわかります、1はUntagged、他のIS Deleted私たちは、ユニークな画像がそのIDとサマリーで識別し、ミラーが複数のラベルを持つことができること、前に紹介しました。

私たちは、ミラーを削除するには、上記のコマンドを使用する際に、ミラーは、実際にラベルの削除を要求しています。だから、最初に行うには、すべての必要性のミラータグが削除されている当社のすべての要件を満たすことである、これは私たちが見たものであるUntagged情報を。ミラーは、複数のラベルに対応することができるので、我々は指定されたラベルを除去する際に、ラベルは、この場合は、次に、この画像に他の点を有していてもよいDelete現象が発生しないであろう。だから、すべてではないdocker image rmミラーの動作を削除する必要があります、唯一のラベルだけがキャンセルされる場合があります。

ミラーは、すべてのタグが取り消された場合は、画像は、このように削除の動作をトリガー、存在意義を失う可能性があります。ストレージ構造は、多層ミラーであるので、削除を削除するときは、順次上位層からベース層の方向であると判定されます。ミラーミラー多層構造は変化の多重化が非常に容易であることができ、従って現在階層の鏡像であるいくつかの他の画像に依存する可能性があります。この場合は、層がまだ動作をトリガしません削除します。現在のレイヤーに応じて、何の層が存在しなくなるまで、唯一の本当の現在のレイヤーを削除します。時には鏡の理由は他のラベル明確にポイントを不思議ませんが、それはまだ存在している理由、そしてなぜ時々の層の数を見つけると、自分を削除する理由、つまりdocker pull異なるソースの層数を確認します。

画像依存性に加えて、容器は、画像に依存していることに留意すべきです。便利なコンテナ(コンテナが実行されていない場合でも)、この画像スタートがある場合、同じ缶がこのイメージを削除しません。上述の前に、容器は、メモリを実行するために、このような多層構造からなる一つの層と結合されたミラーベース、貯蔵容器です。コンテナのイメージが依存している場合このように、必然的に失敗につながるが削除されます。コンテナが必要とされていない場合は、まずそれらを削除する必要があり、その後、画像を削除するために戻ってきます。

ドッキングウィンドウで画像lsが一致するためのコマンド

他のエンティティは、複数のコマンドを引き受けることと同じように、のような、使用することができますdocker image ls -q使用を一致させるためにdocker image rm、あなたは、削除したい画像を一括削除することができます。私たちは、セクション「ミラーのリスト」に引き継ぐことができ、フィルタリストをミラーリング多くの方法を導入しました。

たとえば、私たちは、呼び出されたすべての倉庫削除する必要がredisミラーリングを:

$ docker image rm $(docker image ls -q redis)

またはすべて削除mongo:3.2鏡を前に:

$ docker image rm $(docker image ls -q -f before=mongo:3.2)

あなたの想像力とLinuxのコマンドラインのパワーを活用し、あなたは非常に立派な機能の多くを行うことができます。

#は、 CentOSの/ RHELのユーザーは注意を払うに必要な事項

Ubuntuの/ Debianの上でありますUnionFSよう、使用することができるaufsoverlay2、およびCentOSのとRHELないカーネルドライバ。従って、このようなシステムのために、一般的に用いdevicemapper階層ストレージをシミュレートするために、LVMを使用して、駆動機構を。このアプローチに加えて、比較的貧弱なパフォーマンスで、安定性は一般的に良くない、と構成が比較的複雑です。ドッカーはCentOSの/ RHELに搭載された後、デフォルトで選択されたdevicemapper構成では、簡単にするために、devicemapperデバイスブロックスパースファイルアナログ上で実行される、とも呼ばれますloop-lvmこのような選択は自動的に物事を行うための唯一の方法が設定されているドッカーを、実行するために追加の構成はありません。しかしloop-lvm実際には、悪化しその安定性、パフォーマンスが非常に悪いです、かどうかログdocker infoに警告メッセージが表示されます。明確な記事がどのように構成するブロックデバイスに説明する公式文書devicemapper記憶層アプローチを行うためのドライバは、そのような慣行は、コンフィギュレーションと呼ばれていますdirect-lvm

問題に加えて先に述べたように、devicemapper+ loop-lvmそれが成長していきますので、それは、スパースファイルであるため、欠陥があります。ユーザーはもちろんのそれに気づくでしょう/var/lib/docker/devicemapper/devicemapper/data成長が、制御できません。多くの人々は、ミラーを削除したいと思うでしょうか。この問題を解決し、効果が明らかでないことが判明することができます。その理由は、ガベージコレクションの問題もなく、基本的なスペースのスパースファイルのリリース後です。だから、多くの場合、あなたは、ファイルの内容を削除しても表示されますが、スペースはスパースファイルの使用が増加していると、再利用することはできません。

だから、ユーザーのCentOSのために/ RHELは、使用する方法はありませんにされたUnionFS状況下で、設定する必要がありますdirect-lvmdevicemapper、パフォーマンス、安定性や宇宙利用のためかどうか。

たぶん誰かが7つの駆動バックポートがオーバーレイバックアップCentOSのが、本番環境の安定性のドライバを使用することができないのCentOSの存在に気づいた、それが推奨されていません。

おすすめ

転載: www.cnblogs.com/snake107/p/11921820.html