Docker Desktop merupakan alat penting bagi tim developer yang bekerja di lingkungan container di Windows. Namun, beberapa pengguna mengalami masalah di mana Docker Desktop yang berjalan di WSL2 menggunakan terlalu banyak RAM, hingga 50% dari total memori yang tersedia, meskipun tidak ada container yang sedang aktif. Hal ini dapat mengurangi kinerja sistem secara keseluruhan, terutama jika kita memiliki kapasitas RAM terbatas.
Solusi untuk mengatasi hal ini, kita dapat membatasi alokasi RAM yang digunakan Docker Desktop melalui konfigurasi WSL2. Salah satu cara paling efektif untuk membatasi penggunaan RAM Docker Desktop adalah dengan mengonfigurasi file .wslconfig, yang digunakan untuk mengatur WSL2. Saat menetapkan batas memori, sangat disarankan untuk menggunakan angka bulat, misalnya 4GB, bukan angka desimal seperti 4.2GB. Penggunaan angka desimal bisa menyebabkan masalah dalam parsing konfigurasi, sehingga pengaturan tidak diterapkan dengan benar.
Langkah pertama yang perlu dilakukan adalah membuat atau mengedit file .wslconfig di direktori C:\Users\<NamaPengguna>\. Di dalam file tersebut, tambahkan konfigurasi untuk membatasi memori, seperti berikut ini:
[wsl2]
memory=4GB
Setelah file disimpan, perlu dilakukan stop semua proses WSL dan shutdown docker desktop supaya perubahan dapat diterapkan. Hal ini dapat dilakukan dengan menjalankan perintah berikut di PowerShell atau Command Prompt:
wsl --shutdown
Perintah ini akan menghentikan semua distribusi WSL yang sedang berjalan. Setelah proses ini selesai, Docker Desktop dapat dibuka kembali, dan WSL akan memulai ulang dengan pengaturan baru yang sudah diterapkan.
Rangkuman : Penggunaan RAM yang berlebihan oleh Docker Desktop saat berjalan di WSL2 dapat diatasi dengan membatasi alokasi memori melalui file .wslconfig. Penting untuk memastikan penggunaan angka bulat seperti 4GB, saat mengatur memori, karena angka desimal bisa menyebabkan masalah dalam penerapan konfigurasi. Setelah pengaturan dilakukan, restart WSL dan Docker Desktop untuk memastikan batas memori diterapkan. Dengan solusi ini, Docker Desktop dapat berjalan lebih efisien tanpa membebani sistem dengan penggunaan RAM yang berlebihan. Cara tersebut sudah dipraktekan pada Windows 11 dengan docker desktop v4.34.1 dengan WSL Versi 2. Semoga bermanfaat.