Drupal mit Docker? Ohne mich!

joachim

Als ich 2016 wieder anfing mich intensiv mit Drupal zu beschäftigen, war die internationale-Drupal Community bereits voll im Drupal-8-Fieber. Doch in den USA und anderswo wurde zu dieser Zeit nicht nur Drupal 8 gefeiert. Auch ein kleines aber feines Virtualisierungswerkzueg namens Docker wurde dort so langsam immer bekannter. Hierzulande hielt die Drupal-Communiy nach wie vor an Drupal 7 fest und Drupal-Nutzer, die Ihre Schäu vor der Kommandozeile abgelegt hatten, waren  sozusagen schon „State Of The Art“. 

Während im Jahr 2020 - Knapp 6 Jahre nach meinem Wiedereinstieg in die Drupal-Community nicht nur Docler, sondern mittlerweile auch Kubernates aus der IT-Landschaft nicht mehr wegzudenken sind, weigere ich mich bis heute, zumindest für den Einsatz von Drupal Docker zu nutzen. Aber warum?

Docker oder nicht - Das ist hier die Frage?

Bitte nicht. Zumindest, wenn es nach mir geht. Drupal an sich ist ja schon schwer genug zu lernen. Da gibt es Jahre lang Drupal 7 und dann kommt die Drupal-Community doch plötzlich auf die Idee alles, aber auch wirklich alles auszutauschen. Nicht nur die von der Community selbst entwickelte Codebase ist plötzlich nicht mehr gut genug. Nein zusätzlich gibt es jetzt auch noch die sogenannte Tool-Chain.

Die besteht plötzlich nicht mehr nur aus Drush. Hinzu kommen Composer und die Drupal-Console. Beides sicherlich klasse Werkzeuge mit Daseinsberechtigung.

Der Murks mit den Containern

Das alles soll man jetzt auch noch Containerisieren. So heißt das jetzt auf neudeutsch, wenn man seinen Code in einen Schuhkarton steckt, damit er sich den spärlichen Platz auf dem Sideboard mit möglichst vielen anderen Schuhkartons teilen kann. Blöd nur, wenn in dem Schuhkarton gar keine Schuhe drin sind, sondern Software, wie das von mir so heiß geliebte Drupal. Nebst Webserver/PHP/MYSQL und allerhand anderer Dinge versteht sich.

Schuhkarton

Das Zeug muss da ja auch wieder raus. Nicht etwa, weil man sich laut einschlägiger Modemagazine jetzt Websites statt Schuhen an die Füße hängt. Nein. Sondern schlicht und einfach deshalb, weil es aus dem Karton funken muss, um im Internet gefunden zu werden. Daten Empfangen muss so ein Dockers Schuh dann ja auch noch. Das selbstredend nicht etwa im echten Netzwerk eines Servers, sondern über ein virtuelles Netzwerk, dass auf magische Weise mit den echten Netzwerkschnittstellen eines Servers verbunden ist.

Dazu gibt es dann auch noch einen Salat an neuen Konfigurationsdateien, in denen man das ganze auch noch selbst Konfigurieren muss. Ach ja und Drupal soll man nebenbei auch noch lernen  oder besser man möchte.

Wie soll das gehen, wenn man Drupal seit neustem auf dem V-Server beim Hoster noch mal in einen Karton sperrt, nur um vielleicht noch 20 andere Anwendungen nebendran in anderen Papschachteln laufen zu lassen. Vorausgesetzt, der V-Server gibt das her. Spätestens, wenn ich an meiner Dockerized-Drupal-Installation was mit Composer installieren will, muss ich doch wieder den Deckel vom Karton aufmachen und über die Shell im Container Composer aufrufen. Der legt die heruntergeladenen Daten dann natürlich nicht auf ein virtualisiertes Docker-Volume, sondern bei entsprechender Konfiguration in einen echten Ordner auf dem echten (virtuellen) Server bei meinem Provider. Alles nur damit dass Docker-Volume keine Daten speicheri, die man spätestens beim nächsten Update des Containers sowieso wieder verlieren würde.

Mir wird ja alleine beim Schreiben diese Satzes schon schwindelig. Wenn ich mir jetzt auch noch vorstelle, ich müsste die Konfiguration dafür selbst schreiben und dazu vorher noch tiefgehend begreifen, was da eigentlich passiert, dann ist mir nicht nur schwindelig, sondern ehrlich gesagt speiübel. Irgendwann ist auch mal gut.

Man kann sich sein halbes Leben mit Docker beschäftigen und weiß noch nicht alles über die Virtualisierungslösung, was man vielleicht wissen sollte, wenn man Docker beruflich einsetzt.

Die andere Hälfte, der Lebenszeit nimmt dann der Umstieg von Drupal 7 auf Drupal 8 oder Drupal 9 in Anspruch. Da bleibt ja gar keine Zeit mehr für mich selbst.. Wann zum Teufel darf ich mein Feierabendbier genießen und draußen im Garten Stakes mit lecker Saucen grillen? Nach der Rechnung nie mehr.

Da bleib ich doch besser bei meinen altmodischen Bash-Scripts, wenn es darum geht, eine Drupal-Installation zu automatisieren. Da weiß ich hinterher wenigstens, welcher Befehl was macht und was nicht. Außerdem finde ich im falle eines Problems auch jede Konfigurationsdatei dort, wo sie sich schon seit 20 Jahren auf diversen Linux-Systemen befindet. Anständig kommentiert, kann man so ein Script sogar als  Lernmaterial weitergeben. Ach ja und die Hälfte meiner Lebenszeit, die auf diese Art und Weise jetzt übrig bleibt, nutze ich jetzt wieder zum grillen und chillen. Mit Steak, Sauce und Garten. 

Liebe Drupal Community - Liebe Drupal-Neulinge - Man darf auch mal eine Technologie weglassen. Vor allem dann, wenn die so eingesparte Zeit nicht nur in Steaks und Sauce, sondern auch in frische Lecker Drupal-9-Tutorials investiert werden kann.    

Im Video oben kannst du dir übrigens Autodrupal  ansehen. Das ist eine reine Bash-Lösung zur Installation von Drupal 9. Diese kannst  du selbstverständlich so modifizieren, dass damit jede beliebige Drupal-Version und -Distribution installiert werden kann. Der neuen Tool-Chain aus Drush, Composer und Drupal Console sei Dank!