Rückblick: WordPress Meetup #48 – Lokale Entwicklungsumgebung

Was haben Ele­fan­ten, Pin­gui­ne und Wale gemein­sam? Alle hat­ten ihren Auf­tritt bei unse­rem 48. Meet­up zum Thema „Loka­le Ent­wick­lungs­um­ge­bung“ am 13. Okto­ber 2020. Was sich zunächst nach einem Aus­flug in den Zoo anhört, ist jedoch viel­mehr auf die Logos eini­ger loka­ler Ent­wick­lungs­um­ge­bun­gen zurück­zu­füh­ren mit denen wir uns gemein­sam beschäf­tigt haben.

Was sind lokale Entwicklungsumgebungen?

Bevor wir uns dar­über aus­ge­tauscht haben, wel­che loka­le Ent­wick­lungs­um­ge­bun­gen wir ein­set­zen und wel­che Vor­tei­le wir jeweils sehen, wurde zunächst das Kon­zept sowie eini­ge Anwen­dungs­mög­lich­kei­ten vor­ge­stellt. Gene­rell kann man zwi­schen Live/­Pro­duk­tiv- und Staging/Testumgebungen sowie der loka­len Ent­wick­lungs­um­ge­bung unterscheiden.

Die Live- bzw. Pro­duk­tiv­um­ge­bung ist die ori­gi­nä­re Ver­si­on der Web­sei­te, wel­che unter der offi­zi­el­len Domain erreich­bar ist. Hier sind alle Ände­run­gen sofort für Besu­cher sicht­bar. Geht dabei etwas schief droht im schlimms­ten Fall ein Aus­fall der Seite, denn Ände­run­gen an der Seite sind wie eine Ope­ra­ti­on am offe­nen Herzen!

Stage- bzw. Test­um­ge­bun­gen sind eine mög­lichst genaue Kopie der Pro­duk­tiv­um­ge­bung und z.B. unter einer Sub­do­main wie dev.example.com erreich­bar. Es wird so ein Test der Web­sei­te unter nahe­zu ech­ten Bedin­gun­gen (Updates von Plugins, The­mes, Wor­d­Press, PHP-Ver­si­on etc.) ermög­licht. Ände­run­gen sind dabei für Besu­cher der ori­gi­nä­ren Web­site nicht sicht­bar. Gleich­zei­tig kön­nen jedoch Ände­run­gen bspw. von Kun­den abge­nom­men wer­den. Wich­tig: Die Umge­bung soll­te mit einem Zugangs­schutz für die Öffent­lich­keit gesperrt wer­den (bspw. via .htpasswd oder einem Main­ten­an­ce Plugin).

Loka­le Ent­wick­lungs­um­ge­bun­gen sind eine Kopie der Pro­duk­tiv­um­ge­bung die auf dem loka­len Com­pu­ter unter localhost oder via loka­ler Domain z.B. beispiel.test bereit­ge­stellt wird. Die Umge­bung zeich­net sich u.a. durch ver­schie­de­ne Aspek­te aus. So kön­nen bspw.

  • Datei­än­de­run­gen sofort ange­se­hen oder getes­tet werden
  • Tests von Updates, neuen PHP-Ver­sio­nen, Back­ups oder ande­ren Ände­run­gen durch­ge­führt wer­den ohne ande­re zu behindern
  • Feh­ler ein­fa­cher nach­ver­folgt werden

Eben­falls von Vor­teil ist, dass alle Auf­ga­ben ohne eine akti­ve Inter­net­an­bin­dung durch­ge­führt wer­den können.

Zwei Aspek­te bei Nut­zung einer loka­len Ent­wick­lungs­um­ge­bung haben wir geson­dert her­vor­ge­ho­ben: Datei­en und Daten­ban­ken. Datei­en kön­nen (fast) belie­big zwi­schen den Umge­bun­gen aus­ge­tauscht wer­den. Beach­tet wer­den soll­te hier jedoch, dass ggf. „con­fig“ Datei­en (bspw. wp-config.php) ver­än­dert bzw. aus­ge­tauscht wer­den müs­sen. Daten­ban­ken soll­ten auf­grund der Abhän­gig­kei­ten immer als Gan­zes über­tra­gen wer­den. Wich­tig ist hier­bei große Vor­sicht wal­ten zu las­sen, sofern Ände­run­gen in die Pro­duk­tiv­um­ge­bung über­spielt wer­den sollen.

Genutzte Anwendungen

Vorab haben wir die Teil­neh­mer gefragt, ob und falls ja, wel­che Ent­wick­lungs­um­ge­bung ein­ge­setzt wird. Ein Groß­teil nutzt dem­nach bereits eine loka­le Ent­wick­lungs­um­ge­bung, wobei der Groß­teil davon XAMPP/MAMP ver­wen­det. Wei­te­re Umge­bun­gen sind Vary­ing Vagrant Vagrants (VVV), Docker, Local und Lara­gon. Dar­über hin­aus ver­wen­den eini­ge Nut­zer auch nicht genann­te Umgebungen.

Genutzte Anwendungen der Meetup Teilnehmer
Genutz­te Anwen­dun­gen der Meet­up Teilnehmer.

Erfahrungsaustausch

Nach­dem wir über die Grund­la­gen gespro­chen hat­ten, dis­ku­tier­ten wir in Ein­zel­grup­pen über die ver­schie­de­nen Sys­te­me. Hier wur­den Vor­tei­le, Nach­tei­le und eini­ge Tipps gesam­melt. Die ver­link­te Tabel­le fasst die wesent­li­chen Punk­te der Dis­kus­si­on zusam­men. Es soll­te dar­auf hin­ge­wie­sen wer­den, dass viele der genann­ten Punk­te die per­sön­li­che Erfah­rung der Teil­neh­mer wider­spie­gelt, kei­nes­falls eine geprüf­te Eigen­schaf­ten dar­stel­len und man sich im Zwei­fels­fall sel­ber ein Bild machen sollte.

Hands on

Abschlie­ßend haben wir uns in einer Hands On Ses­si­on eini­ge Ent­wick­lungs­um­ge­bun­gen ange­schaut. Hier haben die Teil­neh­mer einen ers­ten Ein­blick in die Ver­wen­dung der Ent­wick­lungs­um­ge­bun­gen in Zusam­men­hang mit Wor­d­Press bekommen.

Aufzeichnung


Die Auf­zeich­nung des Meetups fin­dest du bei You­Tube.