DDEV-Performance unter Windows verbessern

Bei der Entwicklung unserer Web-Projekte nutzer wir bei varioous DDEV. Einige Entwickler arbeiten bei uns auch mit Windows, wo bei uns bisher die Performance weitaus schlechter als unter Mac war. In diesem Blogbeitrag zeigen wir euch einige Tricks, um die Performance von DDEV unter Windows zu verbessern. Mit diesen einfachen Tricks sind TYPO3-Projekte mit DDEV unter Windows genauso schnell wie unter Mac.

Die Empfehlungen 1. und 2. führen überdies auch dazu, dass die Entwicklungsumgebung (zum Beispiel PhpStorm) auch schneller arbeitet. 

1. Projektverzeichnis aus Windows-Defender ausschließen

Damit Zugriffe auf das Projektverzeichnis nicht vom Windows Defender gescanned oder blockiert werden, muss eine Ausnahme erstellt werden:

  • Windows Security App öffnen
  • Auf „Virus & thread protection“ klicken
  • Unter „Virus & thread protection settings“ auf „Manage Settings“ klicken
  • Unter „Exclusions“ auf „Add or remove exclusions“ klicken
  • Mittels „Add an exclusion“ das Projektverzeichnis wählen

Damit wird das angegebene Verzeichnis natürlich nicht mehr vom Windows Defender geschützt, was natürlich ein Sicherheitsrisiko darstellt. Da ich diese Verzeichnisse allerdings als sicher erachte, habe ich diese Ausnahme hinzugefügt.

2. Projektverzeichnis aus Windows-Suchindex ausschließen

Damit das Projektverzeichnis nicht mehr vom Windows Suchindexer indiziert wird und so möglicherweise zwei Programme gleichzeitig auf Dateien zugreifen, habe ich eine Ausnahmeregel erstellt:

  • „Control Panel“ öffnen
  • Indexing Options“ öffnen
  • „Modify“ klicken
  • Nun das gewünschte Verzeichnis abwählen
  • Speichern

3. NFS verwenden um das Projektverzeichnis im Container zu mounten

NFS (Networt File System) ist ein Protokoll für den Dateizugriff über ein Netzwerk. Dieses möchten wir verwenden um unser Projektverzeichnis im docker-Container zu mounten. In der DDEV-Dokumentation befindet sich auch ein Hinweis darauf. Dadurch kann der Webserver viel schneller auf die Dateien zugreifen, was sich in einer merklich besseren Performance bemerkbar macht. Hier das vorgehen:

  • NFS Installieren (windows_ddev_nfs_setup.sh ausführen). Diese Datei befindet sich auch im DDEV-Installationsordner. Diesen einfach in einer git-bash ausführen. Oder auch über das Terminal-Fenster im PhpStorm.
  • In der Datei “ ~/.ddev/nfs_exports.txt“ das Projektverzeichnis eintragen. Die Datei befindet sich im Benutzer-Verzeichnis also zum Beispiel „C:\Users\varioous\.ddev\nfs_exports.txt“. Und hier zum Beispiel den Projektordner eintragen: „C:\Projects > /c/Projects“.
  • Den Service starten „sudo nssm restart nfsd“
  • „nfs_mount_enabled: true“ in die ddev-Config einfügen (.ddev/config.yaml)
  • Neustarten (ddev restart)