Dockerで同じIDを持つ2つのイメージを削除する

Dockerで同じIDを持つ2つのイメージを削除する

今日 Docker コンテナを作成したとき、誤ってイメージの名前を間違って入力しました。その結果、コンテナが正常に作成された後、同じ ID を持つ 2 つのイメージが表示されました。

docker rmi e4a35914679d を使用して削除するときに実行に失敗しました:

デーモンからのエラー応答: 競合: e4a35914679d を削除できません (強制する必要があります) - イメージは 1 つ以上のリポジトリで参照されています

この ID には 2 つのローカル ファイルがあり、この ID を使用して削除することはできないというプロンプトが表示されます。

そこで、すべてのイメージを削除したいのですが、docker rmi $(docker images -q)、次のエラーが発生します。

デーモンからのエラー応答: 競合: e4a35914679d を削除できません (強制する必要があります) - イメージは 1 つ以上のリポジトリで参照されています

その後、Stack Overflowでリポジトリとタグを使用してこれを行うことを知ったので、docker rmi docker.io/redis:3.2を実行しました。

再度クエリを実行すると、画像が 1 つだけ残っているので削除します。

したがって、リポジトリ:タグの組み合わせを使用して特定のイメージを削除することができます。

追加知識: Docker は空のタグとリポジトリを持つイメージを削除します

最初に docker を学習しましたが、問題が見つかりました。誤操作後。 IMAGE ID のみの空白画像が残されます。

削除する方法ですが、成功するまでに何度か試行する必要がありました。

空のタグと空のリポジトリを持つミラーを削除する場合は、現在のミラーを一覧表示します。

[root@iZ25kr7psegZ ~]# docker イメージ
リポジトリ タグ イメージ ID 作成 サイズ
azkaban_centos 最新 8993c0c20f01 24 時間前 244MB
<なし> <なし> d2dcb7c1f1ce 2日前 1.08GB
mysql 最新 990386cbd5c0 7日前 443MB
centos 最新 9f38484d220f 2か月前 202MB
hello-world 最新 fce289e99eb9 4ヶ月前 1.84kB

削除ステートメント docker rmi IMAGE ID を実行します。

[root@iZ25kr7psegZ ~]# docker rmi d2dcb7c1f1ce

デーモンからのエラー応答: 競合: d2dcb7c1f1ce を削除できません (強制する必要があります) - イメージは停止されたコンテナ cde37d151fdf によって使用されています

これは、イメージが依存するコンテナを停止するように促すものです。

[root@iZ25kr7psegZ ~]# docker stop cde37d151fdf

翻訳:

次にコンテナを削除します。

[root@iZ25kr7psegZ ~]# docker rm cde37d151fdf

翻訳:

その後、この空白の画像を削除できます。

[root@iZ25kr7psegZ ~]# docker rmi d2dcb7c1f1ce
削除済み: sha256:d2dcb7c1f1ce916ea67a0a6c63cda40c62fa8dbc985845e64f3fafe9a37664f1
削除済み: sha256:86ad6d366bb4d0c9e4b176bc220ff8d421902e2bcb197c7c017f8da854c3c72d
削除済み: sha256:128e444c34b373f5e553883c65f676efdb2be22684bcbcf141fb724a7b3de316
削除済み: sha256:15d26edbae6fafd6acad6e3308445846202230b66c6199cb236268f932b59ce8

ミラーリストを再度照会する

[root@iZ25kr7psegZ ~]# docker イメージ
リポジトリ タグ イメージ ID 作成 サイズ
azkaban_centos 最新 8993c0c20f01 24 時間前 244MB
<なし> <なし> adbcb407e207 2日前 571MB
mysql 最新 990386cbd5c0 7日前 443MB
centos 最新 9f38484d220f 2か月前 202MB
hello-world 最新 fce289e99eb9 4ヶ月前 1.84kB

サイズが1.08Gから571Mに減少したことがわかりました。これは、このイメージを保存する別のコンテナがあることを示します。ロシアの入れ子人形のようなものだと考えてください。レイヤーごとに削除する必要があります。これは、docker commit 操作が多すぎることが原因であると思われます。

繰り返し操作を行うと、1 つの画像が異なるコンテナーに対応する場合があることが判明しました。

プロンプトが出されたコンテナ ID ごとに、停止および rm 操作が実行されます。起動回数が多すぎるため、画像が繰り返し読み込まれている可能性があります。最終結果は、もちろん、完全に削除されます。

[root@iZ25kr7psegZ ~]# docker rmi cb9f332b969f
削除済み: sha256:cb9f332b969ff425ef7bf781a1d7dff720dfa32a6e77a20347552b76f6b763eb
削除済み: sha256:2a9ae33d11aadc05d24b58f67c6eb577c64eceff0528d06207e49963257e5f24
[root@iZ25kr7psegZ ~]# docker イメージ
リポジトリ タグ イメージ ID 作成 サイズ
azkaban_centos 最新 8993c0c20f01 24 時間前 244MB
mysql 最新 990386cbd5c0 7日前 443MB
centos 最新 9f38484d220f 2か月前 202MB
hello-world 最新 fce289e99eb9 4ヶ月前 1.84kB

Docker で同じ ID を持つ 2 つのイメージを削除する上記の操作は、エディターが皆さんと共有する内容のすべてです。参考になれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • イメージの起動時にdocker runまたはdocker restartが自動的に終了する問題を解決します
  • イメージのアップロードとダウンロードに docker をプロキシするためのプライベート ライブラリとして nexus を使用する
  • Dockerはelasticsearchイメージを起動し、ディレクトリをマウントした後にエラーを解決します
  • Dockerは元のタグのイメージの再タグ付けと削除を実装します
  • Dockerが新しいイメージをロードした後にリポジトリとタグ名が両方ともnoneになる問題を解決する
  • Dockerイメージのインポート、エクスポート、バックアップ、移行操作
  • Dockerイメージの作成Dockerfileとコミット操作
  • Docker イメージのプルとタグ操作 pull | tag

<<:  Navicat Premiumを使用してMySQLデータベースにリモート接続する方法

>>:  MySQL スロークエリログの有効化と設定

推薦する

MySQLの挿入文字化け問題を解決する方法

問題の説明: MySQL に中国語の文字を挿入する場合、または MySQL では中国語の文字が正常に...

Vueは要素ツリーコントロールを通じてツリーテーブルを実装します

目次実装効果図依存関係をインストールするカスタムツリーコントロールその他の実装要約するVueでは、要...

docker を使用して minio と java sdk を構築するプロセスの詳細な説明

目次1minioはシンプル2 Dockerビルド minio 2.1 単一ノード2.2 マルチノード...

JavaScript スロットリングとアンチシェイクに関する簡単な説明

目次スロットルと手ぶれ防止コンセプト:違いスロットリングの実装スロットル機能手ぶれ補正の実装手ぶれ防...

HTMLページの文字セットを指定する2つの方法

1. HTMLページの文字セットを指定する2つの方法方法1: <メタ文字セット="u...

フロントエンドJSサンドボックスを実装するいくつかの方法についての簡単な説明

目次序文iframeはサンドボックスを実装しますdiffメソッドを使用したサンドボックスの実装プロキ...

Vueはパーセンテージバー効果を実現します

この記事では、パーセンテージバーを実現するためのVueの具体的なコードを参考までに共有します。具体的...

MySQL のデータ型とフィールド属性の原理と使用法の詳細な説明

この記事では、MySQL のデータ型とフィールド属性について説明します。ご参考までに、詳細は以下の通...

美容・スタイリングウェブサイト向けのカラーマッチングテクニックと効果表示

色はあらゆるウェブサイトにとって最も重要な要素の 1 つであり、閲覧者に大きな影響を与えるため、色の...

Linux プログラムの実行中に動的ライブラリをロードできない場合の解決策

Linux でダイナミック ライブラリをロードできません次のような異常事態が発生した場合./test...

Web デザイナーにはどのような知識体系が必要ですか?

製品設計者は、複雑で大規模な製造システムと多様な市場に直面しているため、知識体系には幅広さと深さの両...

JavaScript 関数呼び出しの典型的なサンプルコード

目次JavaScript 関数呼び出しの典型的な例JS関数の定義と呼び出し方法要約するJavaScr...

MySQL ディープ ページング (数千万のデータを素早くページ分割する方法)

目次序文場合最適化まとめ序文バックエンド開発では、一度に大量のデータがロードされ、メモリやディスク ...

シンプルなドラッグ効果を実現するJavaScript

この記事では、簡単なドラッグ効果を実現するためのJavaScriptの具体的なコードを参考までに紹介...

JSX を使用してマークアップ コンポーネント スタイルの開発を作成する例 (フロントエンドのコンポーネント化)

目次JSX環境の構築NPMを初期化するwebpackをインストールするBabelをインストールするw...