⚠️ Traduction non officielle - Cette documentation est une traduction communautaire non officielle de Docker.

Résoudre le récent problème Docker Desktop sur macOS

Ce guide fournit les étapes pour résoudre un problème récent affectant certains utilisateurs macOS de Docker Desktop. Le problème peut empêcher Docker Desktop de démarrer et dans certains cas, peut également déclencher des avertissements de malware inexacts. Pour plus de détails sur l'incident, consultez l'article de blog.

Note

Les versions de Docker Desktop 4.28 et antérieures ne sont pas impactées par ce problème.

Solutions disponibles

Il y a quelques options disponibles selon votre situation :

Mettre à niveau vers Docker Desktop version 4.37.2 (recommandé)

La méthode recommandée est de mettre à niveau vers la dernière version de Docker Desktop qui est la version 4.37.2.

Si possible, mettez à jour directement via l'application. Sinon, et si vous voyez toujours le pop-up de malware, suivez les étapes ci-dessous :

  1. Terminez le processus Docker qui ne peut pas démarrer correctement :

    $ sudo launchctl bootout system/com.docker.vmnetd 2>/dev/null || true
    $ sudo launchctl bootout system/com.docker.socket 2>/dev/null || true
    
    $ sudo rm /Library/PrivilegedHelperTools/com.docker.vmnetd || true
    $ sudo rm /Library/PrivilegedHelperTools/com.docker.socket || true
    
    $ ps aux | grep -i docker | awk '{print $2}' | sudo xargs kill -9 2>/dev/null
    
  2. Assurez-vous que le pop-up de malware est fermé de façon permanente.

  3. Téléchargez et installez la version 4.37.2.

  4. Lancez Docker Desktop. Un message pop-up privilégié s'affiche après 5 à 10 secondes.

  5. Entrez votre mot de passe.

Vous devriez maintenant voir le Tableau de bord Docker Desktop.

Tip

Si le pop-up de malware persiste après avoir complété ces étapes et que Docker est dans la Corbeille, essayez de vider la Corbeille et de relancer les étapes.

Installer un patch si vous avez la version 4.32 - 4.36

Si vous ne pouvez pas mettre à niveau vers la dernière version et que vous voyez le pop-up de malware, suivez les étapes ci-dessous :

  1. Terminez le processus Docker qui ne peut pas démarrer correctement :

    $ sudo launchctl bootout system/com.docker.vmnetd 2>/dev/null || true
    $ sudo launchctl bootout system/com.docker.socket 2>/dev/null || true
    
    $ sudo rm /Library/PrivilegedHelperTools/com.docker.vmnetd || true
    $ sudo rm /Library/PrivilegedHelperTools/com.docker.socket || true
    
    $ ps aux | grep docker | awk '{print $2}' | sudo xargs kill -9 2>/dev/null
    
  2. Assurez-vous que le pop-up de malware est fermé de façon permanente.

  3. Téléchargez et installez l'installateur patché qui correspond à votre version de base actuelle. Par exemple, si vous avez la version 4.36.0, installez la 4.36.1.

  4. Lancez Docker Desktop. Un message pop-up privilégié s'affiche après 5 à 10 secondes.

  5. Entrez votre mot de passe.

Vous devriez maintenant voir le Tableau de bord Docker Desktop.

Tip

Si le pop-up de malware persiste après avoir complété ces étapes et que Docker est dans la Corbeille, essayez de vider la Corbeille et de relancer les étapes.

Script MDM

Si vous êtes un administrateur IT et que vos développeurs voient le pop-up de malware :

  1. Assurez-vous que vos développeurs ont une version re-signée de Docker Desktop version 4.32 ou ultérieure.

  2. Exécutez le script suivant :

    #!/bin/bash
    
    # Arrêter les services docker
    echo "Arrêt de Docker..."
    sudo pkill -i docker
    
    # Arrêter le service vmnetd
    echo "Arrêt du service com.docker.vmnetd..."
    sudo launchctl bootout system /Library/LaunchDaemons/com.docker.vmnetd.plist
    
    # Arrêter le service socket
    echo "Arrêt du service com.docker.socket..."
    sudo launchctl bootout system /Library/LaunchDaemons/com.docker.socket.plist
    
    # Supprimer le binaire vmnetd
    echo "Suppression du binaire com.docker.vmnetd..."
    sudo rm -f /Library/PrivilegedHelperTools/com.docker.vmnetd
    
    # Supprimer le binaire socket
    echo "Suppression du binaire com.docker.socket..."
    sudo rm -f /Library/PrivilegedHelperTools/com.docker.socket
    
    # Installer les nouveaux binaires
    echo "Installation des nouveaux binaires..."
    sudo cp /Applications/Docker.app/Contents/Library/LaunchServices/com.docker.vmnetd /Library/PrivilegedHelperTools/
    sudo cp /Applications/Docker.app/Contents/MacOS/com.docker.socket /Library/PrivilegedHelperTools/
    

Casks Homebrew

Si vous avez installé Docker Desktop en utilisant les casks Homebrew, la solution recommandée est d'effectuer une réinstallation complète pour résoudre le problème.

Pour réinstaller Docker Desktop, exécutez les commandes suivantes dans votre terminal :

$ brew update
$ brew reinstall --cask docker

Ces commandes mettront à jour Homebrew et réinstalleront complètement Docker Desktop, vous assurant d'avoir la dernière version avec la correction appliquée.