Docker adalah software perangkat lunak yang dapat digunakan untuk membuat, menguji, dan menerapkan aplikasi dengan cepat dan terisolasi. Docker membungkus atau mengemas service – service yang dibutuhkan dalam aplikasi kedalam unit standar yang disebut container.
Dengan menggunakan Docker, developer dapat dengan cepat menerapkan dan menskalakan aplikasi ke lingkungan lain tanpa harus takut akan terjadi perbedaaan versi service atau layanan yang terjadi.
Menggunakan Docker Desktop pada sistem operasi Windows memang mempermudah kita dalam manajemen Docker dan Docker Container yang tersedia. Docker Desktop memudahkan kita dalam berbagai cara, seperti start atau stop service pada Docker hanya dengan klik, tanpa harus menulis perintah pada CLI.
Disisi lain, ketika menggunakan Docker Desktop mungkin terdapat kendala yang kita rasakan, yaitu komputer atau perangkat menjadi lebih berat, saat service - service docker tersebut berjalan.
Padahal Docker Container yang sedang berjalan tersebut tidak memakan banyak memory, bahkan untuk penggunaan service memory pada aplikasi tidak lebih dari 1GB.
Tetapi yang terjadi adalah hal lain, realitanya Docker Dekstop malah membuat memory kita termakan begitu banyak, tidak seperti penggunaan seharusnya yang tertera pada aplikasi Docker Desktop.
Lantas sebenarnya apa yang terjadi? Mengapa Docker Desktop bisa begitu banyak memakan banyak memory, padahal service yang dijalankan tidak lebih dari 1GB? Lalu Docker Desktop tersebut bisa memakan lebih dari 1GB untuk pemakaiannya?
Hal ini biasanya terjadi karena Vmmem yang berjalan, bukan karena Docker Container yang sedang kita jalankan.
Apa itu Vmmem?
Vmmem adalah proses yang digunakan oleh Windows yang menggambarkan sumber daya yang dikonsumsi oleh mesin virtual. Seluruh proses ini erat terkait dengan mesin virtual di sistem Kamu yang membantu Kamu mengetahui konsumsi CPU atau RAM yang berlebihan pada perangkat Kamu. Proses ini hanya berjalan pada perangkat Kamu saat Anda menggunakan mesin virtual.
Kemudian kenapa Docker Desktop menjadi berat?
Docker di Windows khususnya Docker Desktop membutuhkan Vmmem untuk menjalankan proses service yang ada di Docker Desktop, itu mengapa konsumsi memory Kamu bisa naik dengan drastis, dan tidak sesuai dengan apa yang tertera pada Docker Desktop.
Cara mengatasi konsumsi memory berlebihan pada Docker Desktop
Cara mengatasinya adalah dengan cara membatasi penggunaan memory dari Proses Vmmem tersebut! Karena masalah utamanya berada disitu, konsumsi memory yang seharusnya tidak terlalu banyak, tapi kita belum membatasinya.
Langkah – langkah untuk membatasi penggunaan memory pada Proses Vmmem untuk Docker Desktop
- Buka Windows PowerShell
- Tulis perintah: notepad “C:\Users\User\.wslconfig”
- Kemudian isi dengan konfigurasi dibawah
# Settings apply across all Linux distros running on WSL 2 [wsl2] # Limits VM memory to use no more than 4 GB, this can be set as whole numbers using GB or MB memory=2GB # Sets the VM to use two virtual processors processors=2
Itu adalah konfigurasi yang digunakan untuk membatasi penggunaan memory saat menjalankan Desktop Docker, perintah itu berasal dari situs resmi Microsoft https://learn.microsoft.com/en-us/windows/wsl/wsl-config#configure-global-options-with-wslconfig, jadi tidak berbahaya untuk sistem operasi Windows yang Kamu jalankan
Simpan konfigurasi .wslconfig tersebut, kemudian untuk mempermudah restart saja komputer atau perangkat Kamu, dan jalankan kembali Docker Desktop. Maka akan terjadi limitasi pada penggunaan memory di Docker Desktop, hanya sebesar 2GB.
Kesimpulan
Masalah utama dari pemakian memory berlebihan pada Docker Dekstop bukan hanya karena dari Docker Desktop itu sendiri. Bisa jadi karena hal lain, pada tutorial ini kita berfokus pada Proses Vmmem, karena pemakian memory yang ada di Docker Container tidak sesuai dengan apa yang ada di Proses Vmmem, maka kita hanya membatasi penggunaan memory pada Proses Vmmem.
Bisa karena penyebab lain yang membuat komputer atau perangkat kamu menjadi berat saat menjalankan Docker Desktop, seperti Cache Docker, Ukuran file yang besar atau hal lainnya.
Jangan lupa, untuk melihat akar masalahnya terlebih dahulu, sebelum melakukan hal untuk memperbaiki itu, dan akar masalah pada topik ini adalah Proses Vmmem yang terlalu banyak memakan memory sehingga komputer atau perangkat menjadi berat.
Maka yang kita lakukan adalah membatasi Proses Vmmem agar tidak memakan banyak memory, sehingga Docker Desktop kita mejadi tidak berat.
Penutup
Semoga artikel ini memberikan wawasan yang berguna tentang Docker Desktop menggunakan banyak memory, dan memberikan informasi tambahan bagi kamu Developer yang masih belum berkenalan dengan Docker. Jangan ragu untuk berbagi artikel ini dengan teman – teman Kamu, Terima kasih!