docker runの--rmオプションの使用方法

docker runの--rmオプションの使用方法

Docker コンテナが終了しても、デバッグを容易にし、ユーザー データを保持するために、デフォルトのコンテナ内のファイル システムは保持されます。

ただし、フォアグラウンド コンテナは開発やデバッグの過程で短時間しか実行されないため、ユーザー データを保持する必要はありません。そのため、コンテナの起動時に --rm オプションを設定することで、コンテナ終了時にコンテナ内のファイル システムを自動的にクリーンアップすることができます。

次に例を示します。

docker run --rm ba-208

同等

docker run --rm=true ba-208

当然ながら、--rm オプションは -d オプションと一緒に使用することはできません (または、一緒に使用しても意味がありません)。つまり、自動的にクリーンアップできるのはフォアグラウンド コンテナーのみであり、デタッチされたコンテナーはクリーンアップできません。

--rm オプションはコンテナの匿名データボリュームもクリーンアップすることに注意してください。

したがって、--rm コマンド オプションを指定して docker run コマンドを実行することは、コンテナの終了後に docker rm -v を実行することと同じです。

追加知識: docker run --cap-add パラメータを使用して権限の問題を解決します (gdb デバッグを使用できない、date -s を使用して時間を変更できない)

問題: docker コンテナ内の CentOS で gdb デバッグが使用できない

ptrace: 操作は許可されていません

ソリューション参照: クリックして入力

docker runコマンドにパラメータ--cap-add=SYS_PTRACEを追加します。

docker を実行して --cap-add=SYS_PTRACE を実行します......

詳しいキャップについてはマニュアルをご覧ください

詳しくは、man7.org/linux/man-pages/man7/capabilities.7.html を参照してください。

あまりエレガントではないが、推奨されないアプローチもあります。–privileged を使用して解決します。–privileged は –cap-add=ALL と同等です。

同様の問題として、date -sを使用してdockerマシンの時刻を変更できないという点があります。

解決:

docker を実行して --cap-add=SYS_TIME --cap-add=SYS_PTRACE ...

docker run の --rm オプションの使い方は以上がエディターが皆さんにシェアしている内容です。参考になれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Dockerサーバーのストレージリソースプール不足問題の解決
  • docker-compose が遅すぎる場合の解決策の詳細な説明
  • DockerでGDBを使用するときにブレークポイントを入力できない問題を解決する

<<:  myBatis で条件を削除する際のスプライシング問題を解決する

>>:  HTML フォーム_PowerNode Java アカデミー

推薦する

Linux ファイルとユーザー管理の実践

1. /etc ディレクトリ内の、文字以外の文字で始まり、その後に文字と任意の長さのその他の文字が続...

HTML の div と span の違い (共通点と相違点)

共通点: DIV タグと SPAN タグは、コンテンツ全体を非表示にしたり、コンテンツ全体を移動した...

VMware15 centos7 ブリッジモード ssh に突然アクセスできなくなる問題を解決する

仮想マシンに独自の LAN IP を持たせたいので、テストを容易にするためにブリッジを使用します。 ...

Windows 7 で MySQL 8.0.16 をインストールして使用する場合、パスワードの変更と Navicat への接続に関する問題が発生する

MySQL のインストール時にいくつかの問題が発生しました。オンラインで見つけた回答は似たようなもの...

JavaScriptのvar let constの違いは何ですか?

目次1. 繰り返し宣言1.1 変数1.2 しましょう1.3 定数2. 可変プロモーション2.1 変数...

JavaScript イベント キャプチャ バブリングとキャプチャの詳細

目次1. イベントの流れ1. コンセプト2. DOMイベントフロー2. イベントの委任1. イベント...

HTML 代替カラーコードを実現する n 通りの方法 サンプルコード

この記事では、主に HTML のサンプル コードを紹介し、次のように交互に色を変更する方法を共有しま...

MySQL 5.7 のキーワードと予約語の詳細な説明

序文MySQL と Oracle のキーワードはまったく同じではありません。Oracle データベー...

Vueは動的コンポーネントを使用してTAB切り替え効果を実現します

目次問題の説明Vueの動的コンポーネントとはアプリケーションシナリオの説明実装手順ステップ 1 (新...

Mysqlチュートリアルでのグループランキングの実装例の詳細な説明

目次1. データソース2. データの総合順位1) 総合ランキング2) 同順位3) 同順位3. データ...

JavaScript で知らない Object.entries の使い方

目次序文1. 共通オブジェクトを反復処理するには for...of を使用します2. 通常のオブジェ...

CentOS 7.9 の zabbix5.0.14 のインストールと設定プロセス

目次1. 基本的な環境設定2. データベースをインストールする3. zabbix関連コンポーネントを...

Vueはel-tableを使用して列と行を動的に結合します

この記事の例では、el-tableを使用して列と行を動的にマージするVueの具体的なコードを参考まで...

VMware15.5 インストール Ubuntu20.04 グラフィック チュートリアル

1. インストール前の準備1. 公式ウェブサイトからUbuntu 20.04のイメージファイルを直接...

Ubuntu 20.04でルートアカウントを有効にする方法

Ubuntu 20.04 をインストールした後、デフォルトでは root アカウントのログイン権限が...