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 ファイルを削除した後にデータを回復する方法

推薦する

Dockerはnginxをデプロイし、フォルダとファイル操作をマウントします

この間、私は docker を勉強していたのですが、nginx をデプロイするときに行き詰まりました...

WeChatミニプログラムは同時通訳を利用して音声認識を実装します

私は同時通訳音声認識機能を使用して、WeChatアプレットのホームページの音声検索機能を実現しました...

JavaScript の組み込みオブジェクト 数学と文字列の詳細な説明

目次数学オブジェクト共通プロパティ一般的な方法Math.random()文字列メソッド長さプロパティ...

Linux での crontab スケジュール実行コマンドの詳細な説明

LINUX では、定期的なタスクは通常、cron デーモン プロセス [ps -ef | grep ...

Flexboxレイアウトの最もシンプルなフォーム実装

フレキシブル レイアウト (Flexbox) はますます人気が高まっており、CSS レイアウトの記述...

Zabbix による SQL Server の監視プロセスの詳細な説明

Zabbix による SQL Server の監視を見てみましょう。まずfreetdsをダウンロード...

Docker で Harbor パブリック リポジトリを構築する方法の例

前回のブログ投稿では、レジストリのプライベート ウェアハウスについて説明しました。今日は、Harbo...

MySQL でパーセンテージと最初の数パーセントを表示する方法

目次必要とする実装コードデータベース数日前、友人からこれを書くのを手伝ってほしいと頼まれました。ただ...

shtmlとhtmlの違い

Shtml と asp は似ています。shtml という名前のファイルでは、asp の命令と同様に、...

MySQL で行を列に変換したり、列を行に変換したりする詳細な例

mysql 行から列へ、列から行へ難しい文章ではないので、詳しく説明はしません。文章を読むときは、一...

Nginx ソースコード調査における nginx 電流制限モジュールの詳細な説明

目次1. 電流制限アルゴリズム2. nginxの基礎知識4. 実戦要約する高並行性システムには、キャ...

WebプロジェクトをIdeaにインポートし、Tomcatに公開する問題を解決します

Idea は既存の Web プロジェクトをインポートして Tomcat に公開しますが、Tomcat...

Typora コードブロックのカラーマッチングとタイトルシリアル番号実装コード

効果: タイトルには独自のシリアル番号があり、コードブロックには配色があり、コードブロックの左上隅に...

この記事では、イベント委任を使用してJavaScriptメッセージボード機能を実装する方法について説明します。

イベント委任を使用してメッセージ ボード機能を実装します。 <!DOCTYPE html>...

IE ブラウザの HTML ハック タグの概要

コードをコピーコードは次のとおりです。 <!--[if !IE]><!-->...