Mengatasi Storage Penuh Akibat Docker di Windows (WSL 2)
DockerBagi Anda yang sering menggunakan Docker Desktop di Windows dengan backend WSL 2 (Windows Subsystem for Linux), mungkin pernah mengalami satu masalah klasik: ruang penyimpanan (storage) yang terus membengkak.
Docker memang sangat efisien untuk development, namun file virtual disk (.vhdx) yang digunakan oleh WSL 2 bersifat dynamically expanding. Artinya, ukurannya akan terus bertambah seiring Anda mengunduh image atau menjalankan container, tetapi tidak akan otomatis mengecil meskipun image atau container tersebut sudah Anda hapus.
Akibatnya, ber-gigabyte ruang hard disk Anda akan tertahan. Jangan khawatir, Anda tidak perlu menginstal ulang Docker. Berikut adalah langkah-langkah mudah untuk melakukan compacting (kompresi) pada virtual disk Docker dan mengembalikan ruang storage Anda.
Langkah 1: Cek Penggunaan Storage Docker (Opsional tapi Disarankan)
Sebelum mengecilkan ukuran disk, pastikan Anda sudah menghapus data Docker yang tidak terpakai (seperti dangling images atau stopped containers). Buka Command Prompt (CMD) atau Terminal, lalu ketikkan perintah berikut untuk melihat status penggunaan storage:
docker system df
(Tips: Jika Anda ingin membersihkan cache dan image yang tidak terpakai sebelum melanjutkan, Anda bisa menjalankan perintah docker system prune -a).
Langkah 2: Matikan Layanan WSL Sementara
Karena kita akan memodifikasi file disk virtual sistem, kita harus memastikan Docker dan WSL sedang tidak berjalan. Buka CMD atau PowerShell Anda, lalu cek status WSL saat ini:
wsl --list --verbose
Anda akan melihat output seperti ini:
NAME STATE VERSION
* docker-desktop Running 2
Untuk mematikan semua layanan WSL, jalankan perintah berikut:
wsl --shutdown
Cek kembali dengan wsl --list --verbose untuk memastikan statusnya sudah berubah menjadi Stopped.
Langkah 3: Gunakan Diskpart untuk Mengecilkan File VHDX
Sekarang, kita akan menggunakan tool bawaan Windows bernama diskpart untuk melakukan compacting pada file .vhdx milik Docker.
(1) Di CMD atau Terminal yang sama, ketikkan perintah:
diskpart(Sebuah jendela baru mungkin akan muncul meminta akses Administrator, klik Yes).
(2) Setelah masuk ke prompt DISKPART>, Anda harus memilih file virtual disk Docker Anda.
Catatan Penting: Sesuaikan path lokasi file .vhdx di bawah ini dengan direktori instalasi Anda. Pada contoh ini, file berada di drive D:.
(Jika Anda menggunakan pengaturan default, lokasinya biasanya ada di C:\Users\NamaUser\AppData\Local\Docker\wsl\data\ext4.vhdx).
Ketikkan perintah berikut (sesuaikan lokasi path-nya):
select vdisk file="D:\Progfiles\DockerVolumes\DockerDesktopWSL\disk\docker_data.vhdx"
Jika berhasil, akan muncul pesan: DiskPart successfully selected the virtual disk file.
(3) Langkah terakhir adalah mengompresi disk tersebut dengan perintah:
compact vdisk
Tunggu prosesnya hingga mencapai 100%. Tergantung seberapa besar file Anda dan kecepatan penyimpanan Anda, ini bisa memakan waktu beberapa detik hingga beberapa menit.
Jika sudah selesai, akan muncul notifikasi: DiskPart successfully compacted the virtual disk file.
(4) Ketik exit untuk keluar dari Diskpart.
Selesai! Cek Kembali Storage Anda
Sekarang Anda bisa mengecek kembali kapasitas drive C: atau D: Anda di Windows Explorer. Ruang penyimpanan yang sebelumnya "tersandera" oleh file VHDX Docker yang membengkak kini sudah kembali normal.
Anda bisa langsung membuka aplikasi Docker Desktop kembali, dan WSL akan otomatis menyala tanpa masalah. Lakukan trik ini secara berkala, terutama setelah Anda melakukan pruning (penghapusan besar-besaran) pada image Docker Anda.





