Docker クリーンアップ環境操作

Docker クリーンアップ環境操作

丁寧に掃除を始めましょう!

未使用ボリュームの一覧

docker ボリューム ls -qf dangling=true

未使用のボリュームをクリーンアップする

docker ボリューム rm $(docker ボリューム ls -qf dangling=true)

不要な画像をクリーンアップする

docker rmi $(docker イメージ | grep '^<none>' | awk '{print $3}')

掃除を続ける

docker システム プルーン

docker ボリュームのプルーニング

上記だけで十分です。他のコマンドはわかりません。

追加知識: Dockerの記事では、Dockerスペースをクリーンアップしてディスクスペースを解放する方法を説明しています。

dockerディレクトリをクリーンアップする方法

docker ディレクトリがシステムディスクをいっぱいにしてしまって移行が困難です。 手っ取り早い解決策があるかお聞きしたいです。 答えはイエスです。以下は、私がまとめた、本番環境やテストに適した典型的なケースです。次のように、docker ログをクリーンアップするスクリプトを作成します。

[root@www ~]# cat clean_docker_log_space.log 
#!/bin/bash
docker_log_files=$(/var/lib/docker/containers/ -name '*-json.log' を検索)
docker_logs_size=$(/var/lib/docker/containers/ -name '*-json.log' を検索 | xargs du -sc | tail -1 |awk '{print $1,"K"}')
free -h && sync && echo 1 > /proc/sys/vm/drop_caches #システムキャッシュを解放 echo -e "\033[32mdocker ログの合計サイズは $docker_logs_size\033[0m です"
 
$docker_log_filesにログイン
  する
   echo "現在、docker ログ、docker core ログをクリーンアップしています:$log"
    cat /dev/null > $log
    systemctl reload docker #既存のdockerに影響を与えずにdockerサービスをリロードします
  終わり 
 
無料 -h

結果は次のとおりです。

[root@www ~]# ./clean_docker_log_space.log 
       使用可能な使用済み空き共有バフ/キャッシュの合計
会員数: 976M 598M 112M 6.8M 264M 157M
スワップ: 511M 66M 445M
dockerログの合計サイズは80Kです
現在、docker ログ、docker コア ログをクリーンアップしています:/var/lib/docker/containers/7538f077348e3c9722fb90ed4b0a5c3d60d72112e989526767c63d55f5a76f3e/7538f077348e3c9722fb90ed4b0a5c3d60d72112e989526767c63d55f5a76f3e-json.log
現在、docker ログ、docker コア ログをクリーンアップしています:/var/lib/docker/containers/235d20190027e757a203f1b4d4093335fb92ba515f7a501448c36c1332c622a2/235d20190027e757a203f1b4d4093335fb92ba515f7a501448c36c1332c622a2-json.log
現在、docker ログ、docker コア ログをクリーンアップしています:/var/lib/docker/containers/685a7af447ce884de1e9bbeb5d4ca0ca99860096f71c33b4f9a4d15a427c5e00/685a7af447ce884de1e9bbeb5d4ca0ca99860096f71c33b4f9a4d15a427c5e00-json.log
       使用可能な使用済み空き共有バフ/キャッシュの合計
会員数: 976M 599M 176M 6.8M 200M 168M
スワップ: 511M 66M 445M
 
[root@www ~]# find /var/lib/docker/containers/ -name '*-json.log' | xargs du -sc | tail -1 |awk '{print $1,"K"}'
0K

Linux のスケジュールされたタスクにスクリプトを追加し、週に 1 回クリーンアップすることをお勧めします。これにより、Docker が追加のログ ファイルを生成しないようにすることができます。

制作環境は以下のとおりです

df -TH dockerはシステムディスクの93%を使用します

スクリプト clean_docker_log_space.log を実行します。クリーンアップ スクリプトを実行した後、df -TH を実行すると、docker がシステム ディスクの 43% を使用していることが示されます。

Docker の導入に関する提案

最後に、dockerアプリケーションをdockerカスタム構成ディレクトリにデプロイすることをお勧めします。

#まず、必要な容量のディスクをマウントし、マウントディレクトリとして/dataを選択します
[root@www ~]# mkdir -p /data
#Dockerを停止
[root@www ~]# systemctl dockerを停止します
 
#データを新しいディレクトリに移動する [root@www ~]# mv /var/lib/docker /data
#設定を変更し、--graph /dataを追加します
[root@www ~]# vim /usr/lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock --graph /data 
 
[root@www ~]# systemctl デーモンリロード
[root@www ~]# systemctl dockerを起動します 
[root@www ~]# systemctl で docker.service を有効にします 
/etc/systemd/system/multi-user.target.wants/docker.service から /usr/lib/systemd/system/docker.service へのシンボリックリンクを作成しました。
 

以上が、Docker環境のクリーンアップ操作の全てです。編集部が皆様にシェアさせていただいた内容です。参考になれば幸いです。また、123WORDPRESS.COMを応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Docker ディスク領域クリーニングのソリューション
  • Docker クリーニングの一般的な方法と問題点
  • Docker が占有するディスク領域をクリーンアップする方法
  • Docker プライベート サーバー イメージを定期的にクリーンアップする方法
  • Docker によって生成されたジャンクファイルをクリーンアップする方法
  • Dockerリソースを素早くクリーンアップする方法
  • Docker クリーンアップ コマンド コレクション
  • Dockerデータを完全にクリーンアップする方法

<<:  WeChatアプレットのスクロールビューの改行問題を解決する

>>:  SQL 最適化チュートリアル: IN クエリと RANGE クエリ

推薦する

MySQL 8.0.21 無料インストール版 設定方法 グラフィックチュートリアル

MySQLをインストールする6つの手順(インストールパッケージのみがインストール場所を選択できます)...

HTMLの基本構文は、HTMLを学び始めたばかりの人にとって便利です。

1.1 一般的なマーキング一般的なタグは開始タグと終了タグで構成されます。構文は次のとおりです: ...

MySQLの日次統計レポートでは、その日にデータがない場合には0が入力されます。

1. 問題の再現:各日の合計数を日ごとにカウントします。データのない日がある場合、グループ化によっ...

Linuxカーネルをコンパイルする方法

1. 必要なカーネルバージョンをダウンロードする2. オペレーティングシステムにアップロードする3....

Vue axios インターセプターは、繰り返しリクエストのキャンセルによく使用されます。

導入前回の記事では、axios のシンプルなカプセル化と、axios インターセプターの適用シナリオ...

vue+element-uiはヘッドナビゲーションバーコンポーネントを実装します

この記事では、vue+element-uiでヘッドナビゲーションバーコンポーネントを実装するための具...

IE ラベル LI テキスト折り返し問題について

私は長い間この問題に悩まされていましたが、検索してみたところ、実際にこの問題を解決した人がいることが...

Reactはグローバル箇条書きボックスメソッドをカプセル化します

この記事の例では、Reactカプセル化グローバルポップアップボックスの具体的なコードを参考までに共有...

Vue+element+oss はフロントエンドのフラグメントアップロードとブレークポイント再開を実現します

純粋なフロントエンド実装:切片上傳斷點續傳。斷點續傳カットとアップロードに基づいて実装する必要があり...

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

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

CSS ポインターイベント属性の使用に関する詳細な説明

フロントエンド開発では、ユーザーと直接やり取りするため、ユーザーが操作がスムーズで快適だと感じ、ネイ...

Clickhouse Docker クラスターの展開と構成を例を使って説明します

目次前面に書かれた環境の展開Zookeeper クラスタの展開Clickhouse クラスターの展開...

HTMLでのラジオ値の取得、割り当て、登録の詳細な説明

1. ラジオのグループ化名前が同じであれば、それらはグループであり、つまり、次のようにグループ内で選...

HTMLの基本タグと構造の詳細な説明

1. HTMLの概要1.HTML: ハイパーテキスト マークアップ言語。これはプログラミング言語では...

ミニプログラムカスタムコンポーネントの非効率的なグローバルスタイルの解決策

目次長すぎて読めないコンポーネントスタイルの分離デモテスト優先度ページの分離構成参考文献ネイティブ ...