Dockerは異常なコンテナ操作を排除する

Dockerは異常なコンテナ操作を排除する

この初心者は、Docker を学び始めたばかりの頃にこのような問題に遭遇しました。記録しておきます。

コンテナを起動すると、docker ps は新しく起動したコンテナに問題があることを示します。

その後、docker logs <コンテナ ID> は権限が不十分であり、ディレクトリを作成できなかったことを認識しました。その後、起動したいのですが、現在のコンテナは常に再起動していました。docker stop を試したところ、成功が返されました。次に、docker ps を実行すると、現在のコンテナがまだ存在していることが示されました。次に、docker kill を試したところ、コンテナが起動していないというメッセージが表示されました。docker -help で確認し、docker rm でコンテナを削除しました。

ただし、このコマンドでは再起動状態のコンテナを削除することはできません。

まず docker stop <コンテナ ID> を実行し、次に docker rm を実行する必要があります。

もちろん、権限不足のため起動に失敗しました。Docker コンテナには、--privileged=true パラメータを追加する権限がありません。

docker-compose を実行する場合、docker-compose up はコンテナを再作成するのではなく、既存のコンテナの使用を優先します。コンテナを再作成するには、--force-recreate パラメータを指定する必要があります。docker-compose up -d --force-recreate

私はdocker初心者なので、遭遇した問題を記録します。批判しないでください。

補足: Dockerは停止したコンテナを大量に削除する

1. やり方

公式の推奨事項は、docker rm $(sudo docker ps -a -q) を使用して、コンテナを一括で削除および停止することです。

docker rm -f $(sudo docker ps -a -q) は使用しないでください。すべてのコンテナが削除されます。

2. なぜこれをするのですか?

1. docker ps -a -q

docker ps コマンドの説明:

docker ps -a -q はすべてのコンテナの数値IDを一覧表示します
root@haha:~# docker ps --help
使用方法: docker ps [オプション]
コンテナの一覧
オプション:
 -a, --all すべてのコンテナを表示(デフォルトでは実行中のコンテナのみを表示)
 -f, --filter value 指定された条件に基づいて出力をフィルタリングします (デフォルト [])
   --format string Go テンプレートを使用してコンテナをきれいに印刷する
   --help 使用方法を表示する
 -n, --last int 最後に作成されたコンテナを n 個表示します (すべての状態を含む) (デフォルト -1)
 -l, --latest 最後に作成されたコンテナを表示します(すべての状態を含む)
   --no-trunc 出力を切り捨てない
 -q, --quiet 数値​​IDのみ表示
 -s, --size 合計ファイルサイズを表示

具体的には、docker psはコンテナを一覧表示するコマンドです。

-a はすべてのコンテナを一覧表示します -q は数値IDのみを表示します

2. docker rm コマンドの説明:

root@haha:~# docker rm --help
使用方法: docker rm [OPTIONS] CONTAINER [CONTAINER...]
1つ以上のコンテナを削除する
オプション:
 -f, --force 実行中のコンテナを強制的に削除する(SIGKILL を使用)
   --help 使用方法を表示する
 -l, --link 指定されたリンクを削除する
 -v, --volumes コンテナに関連付けられたボリュームを削除します

-f 強制削除、実行中のコンテナを削除できます

-v コンテナ起動後はハードディスク上にボリュームの形でデータが存在します。コンテナデータを削除しても削除されません。このパラメータを追加すると、コンテナが実行したデータも削除されます。

上記は私の個人的な経験です。参考になれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。間違いや不備な点がありましたら、遠慮なくご指摘ください。

以下もご興味があるかもしれません:
  • kubernetes1.20 で docker (shim) を containerd に置き換える問題について説明します。
  • Dockerコンテナを終了した後も実行を継続する方法
  • さようなら Docker: 5 分で Containerd に移行する方法
  • Dockerはコンテナにポートを動的に公開します
  • Dockerイメージ内のnoneイメージ操作を削除する
  • Dockerイメージのローカル移行の実装
  • Dockerイメージが消える問題を解決する
  • Docker イメージを削除できません エラー: そのようなイメージはありません: xxxxxx 解決策
  • Dockerでイメージを削除する方法
  • Docker でのコンテナとイメージの命名

<<:  4つの柔軟なScssコンパイル出力スタイル

>>:  mysql5.7.33 で誤って ibdata ファイルを削除した後にデータを回復する方法

推薦する

JS 配列の重複を排除する 9 つの高度な方法 (実証済みで効果的)

序文一般的な方法はここには記載されていませんが、等しいかどうかを判断するための二重ループや、比較のた...

Navicat は CSV データを MySQL にインポートします

この記事では、Navicatを使用してcsvデータをmysqlにインポートする方法を参考までに紹介し...

MySQL でテーブルデータをクリアする 2 つの方法とその違い

MySQL でデータを削除するには 2 つの方法があります。切り詰めは大まかな伐採の一種である削除は...

Dockerの高可用性構成の詳細な説明

Docker の作成Docker Compose は、管理対象コンテナをプロジェクト、サービス、コン...

Linux システム Docker への ASP.NET Core アプリケーションのデプロイのプロセス分析

目次1. システム環境2. 運用プロセスと途中で遭遇した問題1. システム環境1. Tencent ...

docker windows10共有ディレクトリのマウント失敗の解決策

原因docker スクリプトを実行すると、コンテナを作成できないというエラーが発生します。以下のよう...

Vueの監視プロパティの詳細な説明

目次Vue モニターのプロパティリスナープロパティとは何ですか?リスニングプロパティと計算プロパティ...

SQL Server での exists と except の使用法の概要

目次1. 存在する1.1 説明1.2 例1.3 交差/2017-07-21 2. 除く2.1 説明2...

Linux での syslogd および syslog.conf ファイルの解釈

1: syslog.conf の概要異なるタイプの Unix の場合、標準の UnixLog システ...

MySQLデータベースはsysbenchに基づくOLTPベンチマークテストを実装します

Sysbench は、MySQL データベース ストレージ エンジン InnoDB のディスク I/...

Vueフォームで画像を処理する方法

質問: Vue にブログ投稿をアップロードするためのフォームがあり、タイトル、本文、説明、スニペット...

Vue の動的メニュー、動的ルートの読み込みと更新の落とし穴

目次必要:アイデア:レッスン:テキストを共有する:要約する必要:インターフェイスからサブメニュー デ...

VueはAmapを使用して都市の位置特定を実現

この記事では、Amapを使用して都市の位置特定を実現するVueの具体的なコードを参考までに共有します...

ウェブページ要素の完全な分析

相対的な長さの単位それら説明: 相対的な長さの単位。現在のオブジェクト内のテキストのフォント サイズ...