Ich hatte Directus mit der Hilfe dieses Forums auch zum Laufen gebracht. Mit der Performance war ich aber auch nicht zufrieden. Anscheinend legt sich die Anwendung bei Lastpausen schlafen und wacht erst bei Zugriffen wieder auf. Oft konnten einige Dinge nicht nachgeladen werden. Also insgesamt überschaubarer Erfolg.
Strapi scheint ja auch so ein Kandidat zu sein, den man nur mit Mühe zum Laufen bringen kann. Und Netcup anzubeten oder anzuflehen, eine bessere Node.JS-Unterstützung bereitzustellen, hilft auch nicht. Daher probiere ich gerade folgenden Ansatz, der vielversprechender aussieht:
* Download des NodeJS Binary Pakets und auspacken in /nodejs/node-v14.20.0-linux-x64. Alternativ habe ich auch node-v16.16.0-linux-x64. Aber da scheint npm einen Bug zuhaben. Ich würde die Version wählen, die man im Webhosting auswählt.
* Path erweitern in ~/.profile um /nodejs/node-v14.20.0-linux-x64/bin
* Nach einem neuen Login in der Shell kann npm, npx und was auch immer mit NodeJS in der Konsole alles möglich ist,innerhalb eines Webhosting Accounts ausgeführt werden.
* Grundsätzlich geht das auch mit Python (für Flask oder Django z.B:), was auch hier im Forum irgendwo dokumentiert ist.
Aktuell hatte ich Strapi schon einwandfrei zum Laufen gebracht. Ich lerne noch. Deswegen ist mir dann irgend ein Fehler unterlaufen, den ich gerade untersuche. Das wird schon wieder. Dennoch lief es schon mal ziemlich gut und sehr flott auf einem Webhosting 4000. Ich wollte das hier nur als einen weiteren Weg für ein Headless CMS aufzeigen.
Folgende Eigenheiten würde ich beachten:
* mit dem Quickstart-Kommando wird eine index.js (Anwendungsdatei) hinterlegt, wo ein Bootstrapping vorgeschaltet ist. Das scheint mit Netcups Webhosting nicht zu funktionieren. Alternative Konfigurationen gibt es in der Strapi-Doku (letzter Code-Schnipsel).
* Einige Konfigurationsänderungen erfordern ein Rebuild der Adminoberfläche. Wenn man das vergisst, hagelt es Fehler.
* All das ist aber gut dokumentiert.
* Es kann vorkommen, dass das npm-Modul Sharp nicht installiert wird (Logging beobachten). Das lässt sich dank der Shell aber einfach nachziehen mit: npm install --ignore-scripts=false --foreground-scripts --verbose sharp
* Und Strapi verfolgt einen anderen Ansatz als Directus: Also Development auf einem Client und Übertragen des Datenmodells auf den Server. Zeitgleich entwickeln und veröffenlichen wie Directus es tut, sehen die Entwickler nicht vor.
Hier noch die Einstellungen für das Netcup Webhosting:
pasted-from-clipboard.png
Nachtrag: jetzt habe ich meinen Fehler auch gefunden: Bei der Installation und beim Rebuild der Admin-Oberfläche mit npm taucht in der Konsole hin und wieder "/bin/sh: hostname: command not found" auf. Ich hatte das ignoriert. Beim Rebuild setzt das Script dann in der Konfigurationsdateie den Hostnamen auf 0.0.0.0. Das scheint eine Begrenzung in der Shell des Webhostings zu sein. Wenn ich die IP 0.0.0.0 in der config/server.js mit der Subdomain meines Webhostings ersetze und ein npm run build läuft alles wieder einwandfrei:
pasted-from-clipboard.png