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

推薦する

Vue3 における非親子コンポーネントの値転送の詳細な説明

目次アプリ.vueサブ1.vueサブ2.vue要約する vue2 における非親子コンポーネントの値の...

MySQL 8.0.16 winx64 のインストールと設定方法のグラフィックチュートリアル (win10 の場合)

この記事では、MySQL 8.0.16 winx64のインストールと設定の具体的な方法を記載します。...

Linux のハードリンクとソフトリンクの原理と使用法の分析

Linux システムには、ファイル共有を解決するために使用できるリンク ファイルと呼ばれる種類のファ...

MySQLカーソルの詳細な紹介

目次1. カーソルとは何ですか? 2. カーソルの使い方1. カーソルを宣言する2.カーソルを開く3...

MySQL 5.7.17 圧縮バージョンのインストールノート

この記事では、参考までにMySQL 5.7.17圧縮版のインストール手順を紹介します。具体的な内容は...

Webフロントエンドの一般的な操作(JS/HTML/CSSなどの知識を含む)

ul liの前のアイコン1をキャンセルしますクリア値1値を1に設定ラベル中央値1をクリアラベルの中央...

VMware 仮想化 KVM のインストールと展開のチュートリアルの概要

仮想化1. 環境セントオス7.3 selinuxとファイアウォールを無効にする2. 仮想化環境の構成...

Vue ユニットテストに関する予備調査

目次序文なぜユニットテストを導入するのですか?ユニットテストの概要テスト開発パターン1. テスト駆動...

Linux のリンク解除機能とファイルの削除方法

1. リンク解除機能ハード リンクの場合、unlink はディレクトリ エントリを削除し、inode...

dockercompose を使用して springboot-mysql-nginx アプリケーションをビルドする

前回の記事では、Docker を使用して、コンパイルされた jar パッケージをイメージに組み込む ...

iframe の src を about:blank に設定した後の詳細

iframe の src を 'about:blank' に設定した後、"...

Centos8 は kdc 暗号化に基づいて nfs を構築します

目次構成nfs サーバー (nfs.skills.com) nfs クライアント (client.s...

Redis イメージの Docker インストールと設定手順

目次序文環境インストールMySQLコンテナを作成して起動する落とし穴を避けるための注意MySQLコン...

LinuxカーネルとSVNバージョン間の競合の解決策

現象システムは Linux システムカーネルを正常にコンパイルできましたが、SVN をインストールし...

vsftp を使用して Linux で FTP サーバーを構築する (パラメータの説明付き)

導入この章では、主に Linux で FTP サーバーを構築するプロセスを紹介します。習得すべき重要...