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 クエリ

推薦する

Tomcatの自動シャットダウンに関するバグ修正

序文最近、4 年間実行されている Java EE Web プロジェクトでは、システムが開けないという...

Nginxサービス500:内部サーバーエラーの原因の1つ

500 (内部サーバー エラー) サーバーでエラーが発生したため、要求を完了できませんでした。 50...

相同性とクロスドメイン、jsonp(関数カプセル化)、CORS原則の詳細な分析

目次同一起源ポリシーAjax リクエストの制限: Ajaxは自身のサーバーにのみリクエストを送信でき...

モバイルでのHTML5経由のファイルアップロード

ほとんどの場合、PC でファイルをアップロードするにはプラグインが使用され、フラッシュが導入されても...

HTML にネストされた div の無効なマージンに対する解決策

div がネストされているときに margin が機能しない問題の解決策を次に示します。さて、マージ...

JSはclip-pathを使用して動的領域クリッピング機能を実装します

背景今日、CodePen を閲覧していたところ、非常に興味深い効果を見つけました。 CodePen ...

mysql バックアップ戦略の実装 (フルバックアップ + 増分バックアップ)

目次設計シナリオ技術的なポイントサーバー情報準備フルバックアップスクリプト(Mysql-FullyB...

MySQL でサーバーのインストールを開始できない場合の解決策について簡単に説明します。

コンピュータに初めて MySQL をインストールする場合、通常このエラー メッセージは表示されません...

Windows 64 ビットでの MySQL 8.0.13 のインストールと設定方法のグラフィック チュートリアル

この記事では、MySQL 8.0.13のインストールと設定のチュートリアルを参考までに紹介します。具...

docker デプロイメントの実装手順 lnmp-wordpress

目次1. 実験環境2. Dockerソースをインストールする3. Dockerをインストールする4....

Linux でファイルをあいまい検索するのに適したコマンドは何ですか?

1. はじめにこの記事では、主に Linux システムでコマンドライン ツールを使用してファイルを...

Apache Tomcat と IDEA エディターの統合に関する詳細なチュートリアル

1. Apache Tomcat 公式サイトから Tomcat 圧縮パッケージをダウンロードします。...

Node.js http モジュールの使用

目次序文ウェブHTTP サーバーファイルサーバー練習する序文Node.js 開発の目的は、JavaS...

Ansibleを使用してTomcatをバッチでデプロイする方法

1.1 ディレクトリ構造の構築この操作は、nginx+mysql+tomcat+dbのディレクトリ構...

HTMLデータ送信投稿_PowerNode Java Academy

HTTP/1.1 プロトコルで指定されている HTTP リクエスト メソッドには、OPTIONS、...