一、問(wèn)題描述
安裝完WSL2后,又安裝了Docker,使用了一段時(shí)間,發(fā)現(xiàn)電腦變卡,進(jìn)一步查看,發(fā)現(xiàn)CPU和內(nèi)存占用過(guò)大,如下圖:
docker僅僅運(yùn)行了mysql和zk,在關(guān)掉docker后,占用內(nèi)存仍然很大:
然后關(guān)掉wsl后,發(fā)現(xiàn)內(nèi)存下降了。
wsl --shutdown
但是,這種解決方案并不滿足我的訴求,我想要的結(jié)果是:docker+低內(nèi)存占用
二、問(wèn)題解決
通過(guò)查詢資料,最終的解決方案如下:調(diào)整wsl的資源配置信息,將內(nèi)存占用限制在較小的范圍。
上述信息配置在.wslconfig
文件中(WSL1的配置文件為wsl.conf
,詳細(xì)信息可參考wsl配置文件)
2.1 創(chuàng)建.wslconfig文件
路徑位置C:\Users\<UserName>\.wslconfig
,如果找不到也可以在Win+R
,然后輸入%userprofile%
回車即可
如果目錄下不存在,則創(chuàng)建.wslconfig
(多數(shù)情況下,是不存在的)文件內(nèi)容如下:
# Settings apply across all Linux distros running on WSL 2
[wsl2]
# Limits VM memory to use no more than 2 GB, this can be set as whole numbers using GB or MB
memory=2GB
# Sets the VM to use two virtual processors
processors=6
# Sets amount of swap storage space to 2GB, default is 25% of available RAM
swap=2GB
# Sets swapfile path location, default is %USERPROFILE%\AppData\Local\Temp\swap.vhdx
# swapfile=C:\\temp\\wsl-swap.vhdx
這里需要說(shuō)明的是:下圖是微軟官方推薦的配置信息,但我僅僅用來(lái)裝mysql等數(shù)據(jù)庫(kù)之類的,所以改的比較?。ū热缥业膬?nèi)存是32G,如果按照推薦的話,應(yīng)該是8G,但我只想給他2G)。
推薦配置文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-718595.html
2.2 重啟wsl2
# 關(guān)閉wsl
wsl --shutdown
# 啟動(dòng)wsl
wsl
啟動(dòng)docker并開啟mysql等,再次查看資源占用,明顯下降:文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-718595.html
到了這里,關(guān)于解決WSL2占用內(nèi)存過(guò)多問(wèn)題(Docker on WSL2: VmmemWSL)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!