Blog

Rancher Desktopにディスクが異常消費される問題の対処法

はじめに

はじめまして。ニフティ株式会社の森です。

筆者プロフィール

  • 入社時期: 2025年 4月 新卒入社
  • 入社前スキル:
    • 言語: C, Python, JavaScript
    • 他: Docker, Linux, Flutter, AWSは未経験
  • 現在の担当: 課金システムチーム

現在弊社では、Docker Desktopの代替としてRancher Desktopを使用しています。

そのRancher Desktopにディスクを異常に消費されたので、原因と対処法について記しておきます。

Rancher Desktopの利用も広まっていますので、同問題に直面する人の助けになれば幸いです。

環境

OS: Windows 11 24H2

ハードウェア構成は関係ないと思いますので割愛します。

背景

Docker Composeを使用したローカル検証環境作成の過程で、コンテナを何度も作成、削除する作業を繰り返していたところ、マシンのディスク使用量が急激に増加するという問題が発生しました。

当初、イメージやコンテナに対してpruneコマンドを実行して一時的な対処をしていましたが、根本的な解決には至りませんでした。

結果として、使用しているマシンのディスクが埋め尽くされ、作業に支障が出る状況になりました。イメージやコンテナ、ボリュームを削除しても、ディスクの消費量は増え続けるようです。

肥大化した仮想ディスクファイル

原因

Rancher Desktopがデータを保存する仮想ディスクである
C:\\Users\\{ユーザ名}\\AppData\\Local\\rancher-desktop\\distro-data\\ext4.vhdx
のサイズが大きくなったまま縮まないことが原因です。

コンテナの作成→削除には以下のような処理が実行されていると考えられるのですが、中にあるデータが消去されたあとも、仮想ディスクが確保した領域が開放されず、サイズが大きくなり続けているようです[1,2]。

  1. コンテナが作成される
  2. コンテナのデータを保存するために仮想ディスクファイルのサイズが大きくなる
  3. コンテナが削除される
  4. 仮想ディスク内のデータ”は”削除される

一度仮想ディスクが膨らんでしまうと、中身を消しても効果がありませんでした。 それに気づかないままcompose up ,compose downを繰り返した結果が先程の画像です。

pruneコマンドを使用してリソースを削除しても仮想ディスクが縮まない様子

解決方法

調査した中で効果の確認できた解決方法は2つです。

  1. diskpartを使用して仮想ディスクを縮小する
  2. Factory ResetをしてRancher Desktop環境を再構築する

diskpartを使用した方法だと、若干手間がかかりますが必要なデータを残したまま仮想ディスクを縮小できます。Factory Resetですと作業は単純ですが全てのコンテナやイメージが消えるのでご注意ください。

diskpartを使用した仮想ディスクの縮小方法

  1. 事前に不要なコンテナ、イメージ、ボリューム等を削除して仮想ディスクの使用量を下げる
  2. PowerShellからwsl --shutdown を実行してWSLを終了させる
  3. diskpart もしくはdiskpart.exe を実行
  4. diskpartでselect vdisk file=”C:\\Users\\{ユーザ名}\\AppData\\Local\\rancher-desktop\\distro-data\\ext4.vhdx” を実行、ユーザ名は自分のものに置き換えてください。
  5. diskpartでcompact vdiskを実行
    1. この際「ディスクが使用されている」のようなエラーが出て失敗した場合WSLが終了していないです

Factory Resetをする方法

こちらは仮想ディスクファイルを縮小させるというよりは、一旦全てを削除してしまう方法です。

私の場合は、イメージの数が多くなりすぎて必要、不要の判断ができない状況に陥ってましたので、こちらを実行しました。先ほども書きましたが、コンテナやイメージなど全てが消えますのでご注意ください。

手動で仮想ディスクファイルを削除した後、WSLインスタンスの削除、Rancher Desktopの再セットアップを行っても、同じ効果を得られますが、ひと手間かかります。

  1. Troubleshootingを選択
  2. Factory Resetを押す
    • 警告が出るのでOKを選択
  3. 再びRancher Desktopを開くと、インストール時と同じようなウィンドウが出るのでそれぞれの環境にあったセットアップをしてください。

参考資料

  1. https://github.com/rancher-sandbox/rancher-desktop/issues/2398
  2. https://qiita.com/tamanegisoul/items/82b1fe8ed638c79cbe96

終わりに

今回はRancher Desktop使用時にディスクを異常消費される問題への対応策を調査、紹介しました。

同じ問題に遭遇した人の助けになれば幸いです。

この記事を読んだ学生さんに向けて

この記事を書いた時点で入社して半年経たないですが、弊社では新人でも様々なことに挑戦できる環境だと感じています。

例えば私の場合は、既存プロジェクトの使用している言語、ライブラリの更新を提案したところ挑戦させてもらい、改修に参加しています。

このように、年次や経験にかかわらず、アイデアは積極的に取り入れ、挑戦の機会を与えてくれるのが弊社の文化です。もちろん、わからないことを聞けば経験豊富な先輩方がしっかり教えてくれるので、失敗を恐れず安心して新しいことに取り組める環境です。

ニフティでは、
さまざまなプロダクトへ挑戦する
エンジニアを絶賛募集中です!
ご興味のある方は以下の採用サイトより
お気軽にご連絡ください!

ニフティに興味をお持ちの方は
キャリア登録をぜひお願いいたします!

connpassでニフティグループに
参加いただくと
イベントの
お知らせが届きます!