Cloudron makes it easy to run web apps like WordPress, Nextcloud, GitLab on your server. Find out more or install now.


Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Bookmarks
  • Search
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo

Cloudron Forum

Apps | Demo | Docs | Install
  1. Cloudron Forum
  2. NodeBB
  3. Issue Starting NodeBB on Cloudron After Server Restart

Issue Starting NodeBB on Cloudron After Server Restart

Scheduled Pinned Locked Moved Solved NodeBB
16 Posts 7 Posters 923 Views 7 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • J Offline
    J Offline
    joseph
    Staff
    wrote on last edited by
    #2

    It seems nodebb-plugin-markdown is causing some problem. Can you try disabling it ? https://docs.cloudron.io/apps/nodebb/#disabling-plugins . You might have to revert the app to a working state or put the app in recovery mode.

    archosA 1 Reply Last reply
    0
    • J joseph

      It seems nodebb-plugin-markdown is causing some problem. Can you try disabling it ? https://docs.cloudron.io/apps/nodebb/#disabling-plugins . You might have to revert the app to a working state or put the app in recovery mode.

      archosA Offline
      archosA Offline
      archos
      wrote on last edited by
      #3

      @joseph said in Issue Starting NodeBB on Cloudron After Server Restart:

      It seems nodebb-plugin-markdown is causing some problem. Can you try disabling it ? https://docs.cloudron.io/apps/nodebb/#disabling-plugins . You might have to revert the app to a working state or put the app in recovery mode.

      I tried disabling the plugin, but I cannot type in the terminal. It looks like the application is frozen. I also tried enabling recovery mode, but the problem was not resolved.

      1 Reply Last reply
      0
      • archosA Offline
        archosA Offline
        archos
        wrote on last edited by
        #4

        I tried running the command in recovery mode, and I got the following output in the terminal:

        root@630e742c-440d-409a-97ef-45a5161aa337:/app/code# cd /app/code
        root@630e742c-440d-409a-97ef-45a5161aa337:/app/code# ./nodebb reset -p nodebb-plugin-markdown
        Warning: Failed to detect linux-musl, fallback to linux-gnu: The "offset" argument must be of type number. Received an instance of Object
        2025-01-30T18:38:12.386Z [undefined/19] - error: uncaughtException: ENOENT: no such file or directory, mkdir 'logs'
        Error: ENOENT: no such file or directory, mkdir 'logs'
            at Object.mkdirSync (node:fs:1398:3)
            at File._createLogDirIfNotExist (/app/code/node_modules/winston/lib/winston/transports/file.js:759:10)
            at new File (/app/code/node_modules/winston/lib/winston/transports/file.js:94:28)
            at Object.<anonymous> (/app/code/install/web.js:45:3)
            at Module._compile (node:internal/modules/cjs/loader:1256:14)
            at Module._extensions..js (node:internal/modules/cjs/loader:1310:10)
            at Module.load (node:internal/modules/cjs/loader:1119:32)
            at Module._load (node:internal/modules/cjs/loader:960:12)
            at Module.require (node:internal/modules/cjs/loader:1143:19)
            at require (node:internal/modules/cjs/helpers:119:18) {"date":"Thu Jan 30 2025 18:38:12 GMT+0000 (Coordinated Universal Time)","error":{"code":"ENOENT","errno":-2,"path":"logs","syscall":"mkdir"},"exception":true,"os":{"loadavg":[0.46,0.81,0.94],"uptime":44782.76},"process":{"argv":["/usr/local/node-18.18.0/bin/node","/app/code/nodebb","reset","-p","nodebb-plugin-markdown"],"cwd":"/app/code","execPath":"/usr/local/node-18.18.0/bin/node","gid":0,"memoryUsage":{"arrayBuffers":327376,"external":2265472,"heapTotal":30515200,"heapUsed":23418856,"rss":79994880},"pid":19,"uid":0,"version":"v18.18.0"},"stack":"Error: ENOENT: no such file or directory, mkdir 'logs'\n    at Object.mkdirSync (node:fs:1398:3)\n    at File._createLogDirIfNotExist (/app/code/node_modules/winston/lib/winston/transports/file.js:759:10)\n    at new File (/app/code/node_modules/winston/lib/winston/transports/file.js:94:28)\n    at Object.<anonymous> (/app/code/install/web.js:45:3)\n    at Module._compile (node:internal/modules/cjs/loader:1256:14)\n    at Module._extensions..js (node:internal/modules/cjs/loader:1310:10)\n    at Module.load (node:internal/modules/cjs/loader:1119:32)\n    at Module._load (node:internal/modules/cjs/loader:960:12)\n    at Module.require (node:internal/modules/cjs/loader:1143:19)\n    at require (node:internal/modules/cjs/helpers:119:18)","trace":[{"column":3,"file":"node:fs","function":"Object.mkdirSync","line":1398,"method":"mkdirSync","native":false},{"column":10,"file":"/app/code/node_modules/winston/lib/winston/transports/file.js","function":"File._createLogDirIfNotExist","line":759,"method":"_createLogDirIfNotExist","native":false},{"column":28,"file":"/app/code/node_modules/winston/lib/winston/transports/file.js","function":"new File","line":94,"method":null,"native":false},{"column":3,"file":"/app/code/install/web.js","function":null,"line":45,"method":null,"native":false},{"column":14,"file":"node:internal/modules/cjs/loader","function":"Module._compile","line":1256,"method":"_compile","native":false},{"column":10,"file":"node:internal/modules/cjs/loader","function":"Module._extensions..js","line":1310,"method":".js","native":false},{"column":32,"file":"node:internal/modules/cjs/loader","function":"Module.load","line":1119,"method":"load","native":false},{"column":12,"file":"node:internal/modules/cjs/loader","function":"Module._load","line":960,"method":"_load","native":false},{"column":19,"file":"node:internal/modules/cjs/loader","function":"Module.require","line":1143,"method":"require","native":false},{"column":18,"file":"node:internal/modules/cjs/helpers","function":"require","line":119,"method":null,"native":false}]}
        
        1 Reply Last reply
        0
        • A Offline
          A Offline
          Axtremus
          wrote on last edited by
          #5

          I am observing similar issue after upgrading to NodeBB package version 2.14.x.
          Among error logs I am seeing are "ERR!" logs about not being able to resolve the nodebb-plugin-emoji plugins, and the application being "not responding."

          Had to downgrade to NodeBB package version 2.13.4 to resolve the error and get the application back up and running.

          Funny thing is, if I "upgrade" only to package version 2.14.0, I get only "WARN" logs about not being able to resolve the nodebb-plugin-emoji plugins, and the application will eventually get up and run. But if I take one more step to upgrade to 2.14.1, then the "ERR!" logs come back and the application will be stuck "not responding" again. Downgrading from 2.14.1 back to 2.14.0 did not help -- I get the same "ERR!" logs as mentioned above and the application remains "not responding." I have to downgrade back to 2.13.4 to get out of this hole.

          For now, I will disable auto-update and hope that smarter people figure this out and put out a revised NodeBB 2.14.x package that won't have the same or similar issue. (Not really sure how this works ... if 2.14.0 and 2.14.1 really have issues, I'm hoping they will be removed such that auto-update will skip over them and move on to a working update when one becomes available.)

          1 Reply Last reply
          0
          • J Offline
            J Offline
            joseph
            Staff
            wrote on last edited by
            #6

            Can you run /app/pkg/start.sh in the web terminal once and then do the nodebb reset ? The reason is that /app/pkg/start.sh will "initialize" the app with necessary run time configuration and directories.

            hpz24H 1 Reply Last reply
            0
            • J joseph

              Can you run /app/pkg/start.sh in the web terminal once and then do the nodebb reset ? The reason is that /app/pkg/start.sh will "initialize" the app with necessary run time configuration and directories.

              hpz24H Offline
              hpz24H Offline
              hpz24
              wrote on last edited by
              #7

              @joseph Hi, facing similar problems and tried your solution but it does not fix the issue.
              b452fdce-1e98-43de-afae-349028854084-image.png

              1 Reply Last reply
              0
              • nebulonN Offline
                nebulonN Offline
                nebulon
                Staff
                wrote on last edited by nebulon
                #8

                Looks like a dependency issue between plugins. Have you tried to disable some of the mentioned plugins? Maybe they need to be updated upstream and will start working in some time then.

                See https://docs.cloudron.io/apps/nodebb/#disabling-plugins how to do this. Otherwise restore the app and only update once those plugins have a new fixed release.

                1 Reply Last reply
                0
                • hpz24H Offline
                  hpz24H Offline
                  hpz24
                  wrote on last edited by hpz24
                  #9

                  Disabling the plugins has not been successful: The main problem is, that the terminal stops working when nodebb crashes.
                  So, I fiddled around a bit more:
                  Iยดve the same problem as @Axtremus:
                  I downgraded to version 2.13.4 and the app works. Then I updated to 2.14.0 and had also the WARN entries but the app works again. Then I restarted the app manually and the behaviour was the same as at the beginning: WARN entries changed to ERR entries and nothing works.
                  That means: The problem is in Version 2.14: The container works well till the next restart, then it breaks. Even if the app has daily backups, the backups are useless because the backuped a failed state.
                  Conclusion: I restored back to 2.13.4, disabled Auto-Update and have lost 9 days of posts and threads .. ๐Ÿ˜ž

                  J 1 Reply Last reply
                  0
                  • hpz24H hpz24

                    Disabling the plugins has not been successful: The main problem is, that the terminal stops working when nodebb crashes.
                    So, I fiddled around a bit more:
                    Iยดve the same problem as @Axtremus:
                    I downgraded to version 2.13.4 and the app works. Then I updated to 2.14.0 and had also the WARN entries but the app works again. Then I restarted the app manually and the behaviour was the same as at the beginning: WARN entries changed to ERR entries and nothing works.
                    That means: The problem is in Version 2.14: The container works well till the next restart, then it breaks. Even if the app has daily backups, the backups are useless because the backuped a failed state.
                    Conclusion: I restored back to 2.13.4, disabled Auto-Update and have lost 9 days of posts and threads .. ๐Ÿ˜ž

                    J Offline
                    J Offline
                    joseph
                    Staff
                    wrote on last edited by joseph
                    #10

                    @hpz24 said in Issue Starting NodeBB on Cloudron After Server Restart:

                    The main problem is, that the terminal stops working when nodebb crashes.

                    Right, so you need to use the recovery mode for this - https://docs.cloudron.io/apps/#recovery-mode . Put app in recovery mode and then if you run /app/pkg/start.sh it will set up the run time directories. After that, you can run nodebb cli and disable plugins.

                    (cc @girish , please put above in docs)

                    Z 1 Reply Last reply
                    0
                    • A Offline
                      A Offline
                      Axtremus
                      wrote on last edited by
                      #11

                      Newbie questions here ...

                      1. How do I file ticket for this issue?
                      2. How/what do I monitor to know when this issue is resolved (such that I can reenable Auto-Update again)?
                      1 Reply Last reply
                      0
                      • J Offline
                        J Offline
                        joseph
                        Staff
                        wrote on last edited by
                        #12

                        @Axtremus Unfortunately, there is no real way to support issues related to plugins. AFAIK, neither upstream nor Cloudron team tests all the combinations of various plugins and plugin versions and nodebb versions . IOW, one has to debug and find out how to resolve this.

                        I suggest something like this:

                        • Take a backup
                        • Clone the forum - https://docs.cloudron.io/backups/#clone-app
                        • Experiment with the clone to figure out what the issue is wrt deps. If this is getting too complex, I simply recommend not using those plugins.

                        At the end of the day, plugins is "code" just dropped into the main code codebase and anything can happen. It's not some simple configuration . For this forum which is nodebb, we barely use any plugins to prevent breakage.

                        1 Reply Last reply
                        0
                        • julianJ Offline
                          julianJ Offline
                          julian
                          wrote on last edited by
                          #13

                          Hi, Julian from NodeBB team here. Sorry to hear there are dependency issues, they're tricky to debug.

                          Can I get a full record of the WARN and ERR messages? From what I can see in the image above, both the emoji-android plugin and reactions plugin have already been updated so that they request the correct version as a peer dependency.

                          1 Reply Last reply
                          3
                          • Z Offline
                            Z Offline
                            zonzonzon
                            wrote last edited by
                            #14

                            Issue Summary
                            I'm experiencing a critical issue with NodeBB 4.4.5 on Cloudron where the app is stuck in an infinite restart loop due to dependency conflicts. This occurs specifically after restoring from a backup that was working fine on another Cloudron server.

                            NodeBB App Version: 4.4.5 (latest from Cloudron App Store)
                            Node.js: v22.14.0
                            Scenario: Restored NodeBB backup from another working Cloudron server ( NodeBB 3.12.3 )

                            Root Cause
                            The backup contains package.json with dependency versions that are incompatible with NodeBB 4.4.5:

                            ESLint Conflict:

                            @stylistic/eslint-plugin-js@4.4.0 requires eslint>=9.0.0
                            eslint-config-airbnb-base@15.0.0 requires eslint^7.32.0 || ^8.2.0

                            Plugin Conflict:

                            nodebb-plugin-extended-markdown@2.0.1 requires nodebb-plugin-markdown@^12.0.2
                            But package.json has nodebb-plugin-markdown@13.2.1

                            The Cloudron Override Problem
                            Even when I manually fix package.json in Recovery Mode, Cloudron automatically overwrites it during startup with the message:
                            => Bringing package.json up to speed

                            1. Updating package.json file with defaults... OK
                              This creates an infinite restart loop:

                            App starts โ†’ Cloudron overwrites package.json โ†’ npm install fails โ†’ App crashes โ†’ Restart โ†’ Repeat

                            Error Logs
                            npm error ERESOLVE could not resolve
                            npm error While resolving: nodebb-plugin-extended-markdown@2.0.1
                            npm error Found: nodebb-plugin-markdown@13.2.1
                            npm error Could not resolve dependency:
                            npm error peer nodebb-plugin-markdown@"^12.0.2" from nodebb-plugin-extended-markdown@2.0.1
                            What I've Tried

                            1. Recovery Mode Fix (Temporary Success)

                            Successfully fixed package.json by removing conflicting dependencies
                            NodeBB started perfectly in Recovery Mode
                            Problem: Changes lost when exiting Recovery Mode due to Cloudron override

                            J 1 Reply Last reply
                            1
                            • Z zonzonzon

                              Issue Summary
                              I'm experiencing a critical issue with NodeBB 4.4.5 on Cloudron where the app is stuck in an infinite restart loop due to dependency conflicts. This occurs specifically after restoring from a backup that was working fine on another Cloudron server.

                              NodeBB App Version: 4.4.5 (latest from Cloudron App Store)
                              Node.js: v22.14.0
                              Scenario: Restored NodeBB backup from another working Cloudron server ( NodeBB 3.12.3 )

                              Root Cause
                              The backup contains package.json with dependency versions that are incompatible with NodeBB 4.4.5:

                              ESLint Conflict:

                              @stylistic/eslint-plugin-js@4.4.0 requires eslint>=9.0.0
                              eslint-config-airbnb-base@15.0.0 requires eslint^7.32.0 || ^8.2.0

                              Plugin Conflict:

                              nodebb-plugin-extended-markdown@2.0.1 requires nodebb-plugin-markdown@^12.0.2
                              But package.json has nodebb-plugin-markdown@13.2.1

                              The Cloudron Override Problem
                              Even when I manually fix package.json in Recovery Mode, Cloudron automatically overwrites it during startup with the message:
                              => Bringing package.json up to speed

                              1. Updating package.json file with defaults... OK
                                This creates an infinite restart loop:

                              App starts โ†’ Cloudron overwrites package.json โ†’ npm install fails โ†’ App crashes โ†’ Restart โ†’ Repeat

                              Error Logs
                              npm error ERESOLVE could not resolve
                              npm error While resolving: nodebb-plugin-extended-markdown@2.0.1
                              npm error Found: nodebb-plugin-markdown@13.2.1
                              npm error Could not resolve dependency:
                              npm error peer nodebb-plugin-markdown@"^12.0.2" from nodebb-plugin-extended-markdown@2.0.1
                              What I've Tried

                              1. Recovery Mode Fix (Temporary Success)

                              Successfully fixed package.json by removing conflicting dependencies
                              NodeBB started perfectly in Recovery Mode
                              Problem: Changes lost when exiting Recovery Mode due to Cloudron override

                              J Offline
                              J Offline
                              joseph
                              Staff
                              wrote last edited by
                              #15

                              @zonzonzon maybe you can disable the conflicting plugins and start it up in normal mode first and then reinstall the plugins? I am not 100% sure but I think uninstalling a plugin in nodebb only deletes the plugin code and keeps the data in the database.

                              1 Reply Last reply
                              2
                              • J joseph

                                @hpz24 said in Issue Starting NodeBB on Cloudron After Server Restart:

                                The main problem is, that the terminal stops working when nodebb crashes.

                                Right, so you need to use the recovery mode for this - https://docs.cloudron.io/apps/#recovery-mode . Put app in recovery mode and then if you run /app/pkg/start.sh it will set up the run time directories. After that, you can run nodebb cli and disable plugins.

                                (cc @girish , please put above in docs)

                                Z Offline
                                Z Offline
                                zonzonzon
                                wrote last edited by
                                #16

                                @joseph said in Issue Starting NodeBB on Cloudron After Server Restart:

                                /app/pkg/start.sh

                                Thank you very much. I followed this guide, then adjusted the plugins to the corresponding versions and copied the appropriate package.json. The issue has been resolved

                                1 Reply Last reply
                                2
                                • nebulonN nebulon marked this topic as a question
                                • nebulonN nebulon has marked this topic as solved
                                Reply
                                • Reply as topic
                                Log in to reply
                                • Oldest to Newest
                                • Newest to Oldest
                                • Most Votes


                                • Login

                                • Don't have an account? Register

                                • Login or register to search.
                                • First post
                                  Last post
                                0
                                • Categories
                                • Recent
                                • Tags
                                • Popular
                                • Bookmarks
                                • Search