Skip to content

NodeBB - Update auf v1.18.5 - sharp problem

NodeBB
  • Dieses Update hat dazu geführt, das ich die VM aus einem Backup wieder herstellen musste, mit einem kleinen Datenverlust 😞 Aber besser, als alles weg 😉

    Diesen Beitrag gab es übrigens auch schon mal LOL

    Ok, was war passiert? Immer wenn ich

    ./nodebb upgrade
    

    machen wollte, also so wie immer, kam folgendes

    Updating NodeBB...
    
    1. Updating package.json file with defaults...  OK
    
    2. Bringing base dependencies up to date...  started
    
    > sharp@0.29.2 install /home/user_radforum/nodebb_test/node_modules/sharp
    > (node install/libvips && node install/dll-copy && prebuild-install) || (node install/can-compile && node-gyp rebuild && node install/dll-copy)
    
    sharp: Using cached /home/user_radforum/.npm/_libvips/libvips-8.11.3-linux-x64.tar.br
    internal/modules/cjs/loader.js:905
      throw err;
      ^
    
    Error: Cannot find module './index'
    Require stack:
    - /home/user_radforum/nodebb_test/node_modules/.bin/rc
    

    Ein alter Bekannter zickt mal wieder rum. Das Tool sharp ist mir schon öfter in die Quere gekommen. Nachdem ich dann ziemlich viel ausprobiert hatte, immer vorher Snapshot usw., dachte ich dann das alles ok war. Aber heute festgestellt, das das Forum nicht ordentlich lief. Jetzt das Problem, ein Rollback . auf was? Ok, getestet. Ging nicht.

    Ok, dann das Backup zurück. Das war leider ein paar Tage alt. Ok, Schwamm drüber, ich war wieder auf dem alten Stand, aber immer noch ohne das Update, brach ja immer ab.

    Ich habe mir dann geholfen, indem ich das sharp in der package.json gelöscht habe. Nun konnte ich updaten, aber ich wusste das dieses Tool benötigt wird. Das ist der Image Processor, also Bildupload, verkleinern usw.

    Also musste das Tool irgendwie auf die Platte. Mir hatte im NodeBB-Forum jemand diesen Link geschickt.

    Also, mal gelesen. Das hier fand ich interessant.

    When using npm v6 or earlier, the npm install --unsafe-perm flag must be used when installing as root or a sudo user.
    

    Meine npm Version

    user@webserver2:~/nodebb$ npm -v
    6.14.15
    

    Ok, sollte passen. Ich war jetzt also im Homeverzeichnis des Users.

     npm install --unsafe-perm sharp@0.29.2
    

    Danach befand sich das Tool sharp im Ordner node_modules. Die VErsion kann man schön mit

    npm list sharp
    

    testen.

    user@webserver2:~/nodebb$ npm list sharp
    nodebb@1.18.5 /home/user/nodebb
    └── sharp@0.29.2 
    

    Ok, da ist es. Das nun in die NodeBB Installation kopiert, siehe oben. Also in die wo ich das vorher entfernt hatte.
    Dann die package.json wieder angepasst

    "sharp": "0.29.2",
    

    Ein

    ./nodebb upgrade
    

    und danach ging alles wieder. Sehr mühsamer Weg und ich begreife nicht, warum das nicht so wie immer ging!?!?

  • Heute Morgen beim Kaffee dann dieses Forum hier gemacht. Dazu habe ich aber die Vorgehensweise, nach einem Tipp aus dem NodeBB-Forum, ein wenig geändert.

    Ich habe jetzt festgestellt, das es sehr sinnvoll sein kann, nur mit einer Kopie zu arbeiten. Also, kopieren wir uns den ganzen Ordner.

    cp -r nodebb/ nodebb_test/
    

    In diesen Ordner dann wechseln.

    cd nodebb_test/
    

    Der Versuch von

    ./nodebb upgrade
    

    ist wieder gescheitert.

    In file included from ../src/common.cc:24:
    /usr/include/vips/vips8:35:10: fatal error: glib-object.h: Datei oder Verzeichnis nicht gefunden
       35 | #include <glib-object.h>
          |          ^~~~~~~~~~~~~~~
    compilation terminated.
    make: *** [sharp-linux-x64.target.mk:139: Release/obj.target/sharp-linux-x64/src/common.o] Fehler 1
    make: Verzeichnis „/home/user_nodebb/nodebb_test/node_modules/sharp/build“ wird verlassen
    gyp ERR! build error 
    gyp ERR! stack Error: `make` failed with exit code: 2
    

    Nun der Tipp aus dem NodeBB-Forum. Ich soll den node_modules/ Ordner neu installieren lassen. Ok, dazu sichern wir uns den erstmal.

    mv node_modules/ node_modules_BAK/
    

    Danach ein

    npm install
    

    Da ich kein nodejs Nerd bin, vermute ich mal, das npm (der Paketmanager) jetzt alle Pakete aus der package.json neu runterlädt und installiert!? Die Aussage ist mit Vorsicht zu genießen, da ich mir nicht 100% sicher bin. Sollte aber passen 😉 Jedenfalls habe ich danach wieder einen node_modules/ Ordner.

    Dann hatte ich ja gestern gelernt, wie ich mir die Version der Pakete anzeigen lassen kann.

    user@webserver2:~/nodebb_test$ npm list sharp
    nodebb@1.18.5 /home/user/nodebb_test
    └── sharp@0.29.2 
    

    Jetzt hat der Paketmanager npm in der richtigen Version installiert. 🤔 Schon ein wenig verrückt, oder?

    Danach ein

    ./nodebb upgrade
    

    Das lief durch

    NodeBB Upgrade Complete!
    

    Um das jetzt nicht nochmal machen zu müssen, habe ich die Original NodeBB Installation gesichert und den Testordner an dessen Stelle kopiert. Einmal neugestartet und ausprobiert. Bei dieser Version muss ich leider immer zweimal

    ./nodebb upgrade
    

    machen, bis es ordentlich läuft. Seltsam, aber kann ich mit leben. Diese Paket sharp macht jedesmal auf eine andere Art und Weise Probleme - ziemlich nervig. Eigentlich ist dieser Upgrade Vorgang nämlich stressfrei und problemlos. In seltenen Fällen meckert er mal über ein FIle was schon da ist. Das sieht man aber in der Ausgabe und löscht das dann einfach, Vorgang erneut starten und gut.

    Merksatz

    Original Ordner kopieren und darin den Upgrade Prozess erst testen!!

  • FrankMF FrankM hat am auf dieses Thema verwiesen
  • FrankMF FrankM hat am auf dieses Thema verwiesen

  • NodeBB - v3.7.0

    NodeBB
    1
    0 Stimmen
    1 Beiträge
    44 Aufrufe
    Niemand hat geantwortet
  • NodeBB - 2.8.13 & 3.1.3 Security Release

    NodeBB
    1
    0 Stimmen
    1 Beiträge
    45 Aufrufe
    Niemand hat geantwortet
  • NodeBB - v3.0.0-rc.1

    NodeBB
    1
    0 Stimmen
    1 Beiträge
    56 Aufrufe
    Niemand hat geantwortet
  • NodeBB - Update 2.8.1

    NodeBB
    1
    0 Stimmen
    1 Beiträge
    48 Aufrufe
    Niemand hat geantwortet
  • Nodebb - iframely

    NodeBB
    5
    0 Stimmen
    5 Beiträge
    153 Aufrufe
    FrankMF

    In der Anleitung von iframely werden zwei Tools angesprochen, um den Dienst dauerhaft am Laufen zu halten.

    forever pm2

    Ich habe beide ausprobiert, pm2 recht intensiv. Bin aber zu der Überzeugung gekommen, das es für mich nicht sinnvoll ist eines dieser Tools zu nutzen. Meine NodeJS Fähigkeiten sind sehr überschaubar, so das ich mich mit keinem der Tools richtig wohl gefühlt habe. Also machen wir es so, wie es in Debian 11 eingebaut ist - mit systemd

    Hier das File wie ich den Dienst starte.

    [Unit] Description=Iframely Documentation=https://iframely.com/docs/host After=system.slice multi-user.target [Service] Type=simple User=<USER> StandardOutput=syslog StandardError=syslog SyslogIdentifier=iframely WorkingDirectory=/home/<USER>/iframely PIDFile=/home/<USER>/iframely/pidfile ExecStart=/usr/bin/node cluster Restart=always [Install] WantedBy=multi-user.target
  • NodeBB - v1.14.0

    NodeBB
    3
    0 Stimmen
    3 Beiträge
    228 Aufrufe
    FrankMF

    Die gerade veröffentlichte Version 1.14.1 fixt das o.g. Problem. Alles wieder normal 😉

  • NodeBB - Update auf 1.13.1

    NodeBB
    2
    0 Stimmen
    2 Beiträge
    238 Aufrufe
    FrankMF

    Kurze Ergänzung, heute Morgen dieses Forum hier aktualisiert. Wie erwartet geht es jetzt einfach durch. Bis auf ein Plugin, was nicht kompatibel mit der Version 1.13.x ist. Das ist aber eine andere Baustelle. Für interessierte Leser, hänge ich den Log an.

    ~/nodebb$ ./nodebb upgrade Updating NodeBB... 1. Updating package.json file with defaults... OK 2. Bringing base dependencies up to date... started > sharp@0.23.4 install /home/user_nodebb/nodebb/node_modules/sharp > (node install/libvips && node install/dll-copy && prebuild-install) || (node-gyp rebuild && node install/dll-copy) info sharp Downloading https://github.com/lovell/sharp-libvips/releases/download/v8.8.1/libvips-8.8.1-linux-x64.tar.gz internal/modules/cjs/loader.js:638 throw err; ^ Error: Cannot find module './index' at Function.Module._resolveFilename (internal/modules/cjs/loader.js:636:15) at Function.Module._load (internal/modules/cjs/loader.js:562:25) at Module.require (internal/modules/cjs/loader.js:692:17) at require (internal/modules/cjs/helpers.js:25:18) at Object.<anonymous> (/home/user_nodebb/nodebb/node_modules/.bin/rc:2:10) at Module._compile (internal/modules/cjs/loader.js:778:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10) at Module.load (internal/modules/cjs/loader.js:653:32) at tryModuleLoad (internal/modules/cjs/loader.js:593:12) at Function.Module._load (internal/modules/cjs/loader.js:585:3) make: Entering directory '/home/user_nodebb/nodebb/node_modules/sharp/build' TOUCH Release/obj.target/libvips-cpp.stamp CXX(target) Release/obj.target/sharp/src/common.o CXX(target) Release/obj.target/sharp/src/metadata.o CXX(target) Release/obj.target/sharp/src/stats.o CXX(target) Release/obj.target/sharp/src/operations.o CXX(target) Release/obj.target/sharp/src/pipeline.o CXX(target) Release/obj.target/sharp/src/sharp.o CXX(target) Release/obj.target/sharp/src/utilities.o SOLINK_MODULE(target) Release/obj.target/sharp.node COPY Release/sharp.node make: Leaving directory '/home/user_nodebb/nodebb/node_modules/sharp/build' npm WARN nodebb-plugin-emoji-android@2.0.0 requires a peer of nodebb-plugin-emoji@^2.0.0 but none is installed. You must install peer dependencies yourself. npm WARN textcomplete.contenteditable@0.1.1 requires a peer of textcomplete@^0.14.2 but none is installed. You must install peer dependencies yourself. added 2 packages from 1 contributor, updated 13 packages and audited 3687 packages in 35.671s 4 packages are looking for funding run `npm fund` for details 3. Checking installed plugins for updates... OK A total of 1 package(s) can be upgraded: * nodebb-plugin-2factor (2.6.4 -> 2.6.5) Proceed with upgrade (y|n)? n Package upgrades skipped. Check for upgrades at any time by running "./nodebb upgrade -p". 4. Updating NodeBB data store schema... Parsing upgrade scripts... 2019-12-22T07:52:31.428Z [4567/11002] - warn: [upgrade/appendPluginScripts] Unable to read plugin.json for plugin `nodebb-plugin-align-center`. Skipping. 2019-12-22T07:52:31.429Z [4567/11002] - warn: [upgrade/appendPluginScripts] Unable to read plugin.json for plugin `nodebb-plugin-blog-comments`. Skipping. 2019-12-22T07:52:31.429Z [4567/11002] - warn: [upgrade/appendPluginScripts] Unable to read plugin.json for plugin `nodebb-plugin-blog-comments2`. Skipping. 2019-12-22T07:52:31.430Z [4567/11002] - warn: [upgrade/appendPluginScripts] Unable to read plugin.json for plugin `nodebb-plugin-contact-page`. Skipping. 2019-12-22T07:52:31.430Z [4567/11002] - warn: [upgrade/appendPluginScripts] Unable to read plugin.json for plugin `nodebb-plugin-emoji-fontawesome`. Skipping. OK | 0 script(s) found, 84 skipped Schema update complete! 5. Rebuilding assets... started 2019-12-22T07:52:31.489Z [4567/11002] - info: [build] Building in parallel mode 2019-12-22T07:52:31.491Z [4567/11002] - info: [build] plugin static dirs build started 2019-12-22T07:52:31.500Z [4567/11002] - info: [build] requirejs modules build started 2019-12-22T07:52:31.501Z [4567/11002] - info: [build] client js bundle build started 2019-12-22T07:52:31.503Z [4567/11002] - info: [build] admin js bundle build started 2019-12-22T07:52:31.503Z [4567/11002] - info: [build] client side styles build started 2019-12-22T07:52:31.504Z [4567/11002] - info: [build] admin control panel styles build started 2019-12-22T07:52:31.504Z [4567/11002] - info: [build] templates build started 2019-12-22T07:52:31.505Z [4567/11002] - info: [build] languages build started 2019-12-22T07:52:31.505Z [4567/11002] - info: [build] sounds build started 2019-12-22T07:52:32.493Z [4567/11002] - info: [build] sounds build completed in 0.988sec 2019-12-22T07:52:41.512Z [4567/11002] - info: [build] client side styles build completed in 10.009sec 2019-12-22T07:52:41.939Z [4567/11002] - info: [build] admin control panel styles build completed in 10.435sec 2019-12-22T07:52:51.628Z [4567/11002] - info: [build] plugin static dirs build completed in 20.136sec 2019-12-22T07:52:52.192Z [4567/11002] - info: [build] client js bundle build completed in 20.691sec 2019-12-22T07:52:52.192Z [4567/11002] - info: [build] admin js bundle build completed in 20.689sec 2019-12-22T07:52:58.054Z [4567/11002] - info: [build] languages build completed in 26.549sec 2019-12-22T07:53:01.537Z [4567/11002] - info: [build] templates build completed in 30.033sec 2019-12-22T07:53:02.409Z [4567/11002] - info: [build] requirejs modules build completed in 30.909sec 2019-12-22T07:53:02.412Z [4567/11002] - info: [build] Asset compilation successful. Completed in 30.921sec. NodeBB Upgrade Complete!

    Auch hier sieht man schön, wie das o.g. Paket heruntergeladen wird und gebaut wird!

  • NodeBB - Update

    NodeBB
    1
    0 Stimmen
    1 Beiträge
    659 Aufrufe
    Niemand hat geantwortet