Le processus Docker VMMEM prend trop de mémoire dans Windows 11/10

Le processus Docker VMMEM prend trop de mémoire dans Windows 11/10

Les utilisateurs qui ont installé Docker à l'aide du sous-système Windows pour Linux2 sur leurs machines Windows se sont plaints d'avoir subi un processus VMMEM consommant une énorme quantité de puissance de mémoire. Selon ces utilisateurs touchés, ce drain de mémoire sort des graphiques, atteignant parfois jusqu'à 99% (1.5-2 Go de RAM)! C'est un problème préoccupant car cela ralentit considérablement le système affecté. Donc, vous devez suivre ces correctifs pour résoudre le problème.

Table des matières

  • Correction 1 - laissez-le fonctionner
  • Correction 2 - Arrêt du WSL
  • Correction 3 - restreindre l'utilisation de la mémoire
  • Correction 4 - Redémarrez le LXSSManager
  • Correction 5 - Augmenter les ressources allouées

Correction 1 - laissez-le fonctionner

Le processus VMMEM continue de fonctionner même après avoir fermé le WSL2. Il s'agit du comportement normal et VMMEM peut continuer à consommer des quantités plus élevées de ressources système jusqu'à 1 à 2 minutes après la fin du processus VMMEM. Alors, attendez jusqu'à ce point jusqu'à ce qu'il s'arrête et finit par libérer la mémoire.

Correction 2 - Arrêt du WSL

La meilleure façon d'empêcher Docker d'utiliser trop de mémoire est de fermer le sous-système Windows pour Linux.

NOTE - Comme cela arrête le WSL2, vous devez faire attention à l'exécution au moment du besoin. Donc, exécutez ceci uniquement lorsque vous avez fini d'exécuter le Docker et que vous n'en avez pas besoin plus loin.

1. Vous pouvez le faire à partir de n'importe quel terminal, mais vous devez l'ouvrir avec des droits administratifs. Alors, ouvrez la zone de recherche et tapez "powershell".

2. Ensuite, cliquez avec le bouton droit sur «Windows PowerShell"Et cliquez"Exécuter en tant qu'administrateur«Pour ouvrir le terminal en tant qu'administrateur.

PowerShell Run en tant qu'administrateur min

3. Maintenant, écrire Ceci dans le terminal et frappe Entrer Pour arrêter le sous-système Windows pour Linux.

WSL - SHUTDOWN
WSL Shutdown min 1

Cela fera arrêter le WSL2 et finalement, VMMEM cessera de consommer des quantités massives de mémoire.

Correction 3 - restreindre l'utilisation de la mémoire

Il existe une autre façon de lier l'utilisation de la mémoire par wsl2. Vous pouvez créer un nouveau fichier de configuration ou modifier celui existant.

Étape 1

1. Au début, vous devez fermer la configuration WSL2.

2. Alors, commencez à taper "powershell"Dans la boîte de recherche.

3. Ensuite, cliquez avec le bouton droit sur «Windows PowerShell"Et cliquez"Exécuter en tant qu'administrateur«Pour exécuter le terminal en tant qu'administrateur.

PowerShell Run en tant qu'administrateur min

4. Après cela, exécutez ce code pour arrêter WSL2 immédiatement.

WSL - SHUTDOWN
WSL Shutdown min 1

Après cela, vous pouvez fermer le Powershell Terminal.

Étape 2

Maintenant, vous devez créer un fichier de configuration. Alors, glisse à travers ces points.

1. Rechercher et ouvert Bloc-notes.

bloc-notes min

2. Là, pâte Ces deux lignes.

[wsl2] mémoire = 2 Go # limite la mémoire VM dans WSL 2 jusqu'à 3 Go de processeurs = 2 # Faites en sorte que le WSL 2 utilise jusqu'à deux processeurs virtuels

[NOTE - Vous pouvez voir dans le fichier de configuration, nous avons défini le paramètre de mémoire sur 2 Go et les processeurs virtuels comptent sur 2. Ce sont les modificateurs et vous pouvez les définir comme vous le souhaitez.]]

Memorde ws min

3. Après cela, cliquez sur "Déposer"Et cliquez"Enregistrer sous"Pour enregistrer le fichier.

Économisez en min

4. Maintenant, nommez le fichier "%Profil de l'utilisateur%\.wslconfig".

5. Puis clique "Sauvegarder"Pour enregistrer le fichier.

Enregistrer config min

Vous pouvez fermer Bloc-notes après ça.

Après cela, ouvert Docker. Dès que vous ouvrez cela, vous verrez l'option de redémarrer la machine virtuelle.

Alors, cliquez sur "Oui"Pour redémarrer cela.

Maintenant, le VMMEM ne mangera pas une grande quantité de RAM.

Étapes facultatives -

Linux consomme plus de mémoire pour mettre en cache les fichiers. Vous pouvez l'empêcher avec cette ligne unique (courir à partir d'un terminal administratif) -

Echo 3 | sudo tee / proc / sys / vm / drop_caches

Cela devrait limiter le stockage du cache et libérer plus de RAM pour l'hôte.

Correction 4 - Redémarrez le LXSSManager

Vous devez redémarrer le LXSSManager dans PowerShell.

1. Ouvrir Powershell ou tout autre terminal en tant qu'administrateur.

2. Alors, saisir Cette commande et frappe Entrer pour redémarrer le LxssManager.

Redémarrage LXSSSManager

Ensuite, vérifiez à nouveau la consommation de RAM.

Correction 5 - Augmenter les ressources allouées

Vous pouvez augmenter la RAM allouée, le processeur et échanger facilement afin que la consommation de VMMEM réduit considérablement.

1. Ouvrir Paramètres docker [Vous devrez peut-être exécuter Docker VM en mode Linux pour voir ces paramètres.]].

2. Là, allez au «Avancé" paramètre.

3. À l'intérieur, vous pouvez modifier les paramètres du processeur, de la mémoire et de l'échange en fonction des ressources système disponibles.

Cela devrait réduire considérablement la consommation de ressources VMMEM.