docker system prune では13GBが1バイトも消えなかった|4段階に分けて実測した

Difyとn8nを実測したあと、VPSのディスクに 13GB のイメージが残りました(Difyの実測記事)。 片付けようと docker system prune を叩きました。79.75MBしか消えませんでした。 「掃除コマンド」は1つではありません。4段階あり、それぞれ触る場所が違います。 段階ごとに df と docker system df を取って、どこで何が消えるかを測りました。 結論:4段階で消えるものはこれだけ違う 段階 コマンド 消えたもの 回収 1 docker system prune 停止中のコンテナ 79.75MB 2 docker image prune -a 未使用イメージ13個 12.96GB 3 docker volume prune 匿名ボリューム20個 51.45kB 4 docker volume prune -a 名前付きボリューム3個 5.713MB 第1段階だけで止めると、13GBがそのまま残ります。 第3段階で止めると、データが入っているほうが残ります。 測定条件 サーバー:さくらのVPS 2Gプラン / Ubuntu 24.04 LTS / Docker 29系 片付ける対象:Difyのイメージ12個(10.6GB)、n8nのイメージ1個(2.47GB)、コンテナ1個、ボリューム23個 稼働中のコンテナ:なし(測定前にすべて停止・削除済み) 開始時:ディスク使用 23,724MB / 空き 71,808MB 掃除を始める前の docker system df です。 ...

2026年9月7日 · 3 分

2GBのVPSにDifyは載るのか|16コンテナを実測したら2,076MB要求してきた

前回、n8nは2GBのVPSに 402MB で載りました(実測記事)。そのとき「次はDifyを入れてみます」と書きました。 Difyの公式要件は 2CPU / 4GB。今回の環境は2GB、しかも本番の処理と公開中のサイトが同居しています。要件を満たしていません。 それを承知で載せて、10秒ごとに測りました。 結論から書きます。載ります。ただし2,076MB要求してきます。 上のオレンジ色が、物理メモリに収まらずスワップへ追い出された分です。881MB。 そして下のグラフ、起動から4分間はI/O待ちが最大91%。この間、SSHの接続が切れました。 測定条件 サーバー:さくらのVPS 2Gプラン / Ubuntu 24.04 LTS 同居しているもの:定期的にデータを取得して予測を回すバッチ処理と、静的サイト1本 Dify:1.17.0(公式リポジトリの docker/ をそのまま使用、ベクトルDBは既定のweaviate) 記録:10秒間隔・自作スクリプト。free / vmstat / ps と cgroup の memory.current を読むだけ 時間:10分間(起動から自動停止まで) 前回までに43時間のベースラインと、n8nを載せた前後の数字が取ってあります。「載せる前」が分かっているので、増えた分がそのままDifyのコストになります。 先に:ディスクが10.6GB増える メモリの話の前に、こちらのほうが先に効きます。 イメージ取得前 12,971MB イメージ取得後 23,572MB 差分 +10,601MB イメージだけで10.6GB。 n8nは2.47GBだったので、4.3倍です。 内訳の上位はこうなっています。 イメージ サイズ dify-api 4.06GB dify-plugin-daemon 2.28GB dify-agent-backend 1.45GB dify-web 892MB dify-sandbox 848MB dify-agent-local-sandbox 779MB postgres / squid / nginx / weaviate / redis ほか 計 1.25GB dify-api の1本だけで4GB。n8nのイメージ全体(2.47GB)より大きい。 ...

2026年9月6日 · 4 分

2GBのVPSにn8nは載るのか|Dockerとn8nを分けて実測したら402MBだった

「2GBのVPSでn8nは動くのか」を調べると、たいてい「動く」か「厳しい」のどちらかしか書いてありません。具体的に何MB増えるのかは、ほとんど出てきません。 実際に載せて、1分刻みで測りました。 合計402MB。 そして載せ終わってもまだ1.1GB空いています。 測定条件 サーバー:さくらのVPS 2Gプラン / Ubuntu 24.04 LTS 元から動いていたもの:定期的にデータを取得して予測を回すバッチ処理と、静的サイト1本 記録:1分ごとにcronで自動記録(スクリプトは前の記事に載せています) 時間:2026-09-07 01:12 〜 01:37 前の記事で43時間分のベースラインを取ってあります。「載せる前」が分かっているので、増えた分がそのままn8nのコストになります。 結果:4段階に分けて測る 多くの記事は「n8nは○MB」で終わります。しかし実際に増えるものは1つではありません。 段階 システム全体のメモリ 増分 元の状態 438MB — +Dockerデーモン 476MB +38MB +n8nコンテナ起動 804MB +328MB +UIを開いてワークフローを1本 840MB +36MB 合計 +402MB ディスクは 10GB → 13GB(+3GB)。スワップは 0 → 37MB 使われました。 発見1:Dockerデーモンだけなら38MB 「Dockerは重い」とよく言われます。実際に測ると、デーモン単体では38MBでした。 導入直後の記録がこれです。 01:14 431MB python 90.8, systemd-journal 72.7, multipathd 26.7 ← 導入前 01:15 523MB apt-get 98.3, python 90.8, dockerd 87.6 ← インストール中 01:16 483MB python 90.8, dockerd 88.3, systemd-journal 72.9 ← 完了 01:19 478MB python 90.8, dockerd 87.0, systemd-journal 73.0 ← 安定 インストール中は apt-get で523MBまで上がりますが、終われば478〜485MBに落ち着きます。 ...

2026年9月6日 · 2 分