NodeBB EC2 micro how much load can handle

Technical Support

Suggested Topics


  • 0 Votes
    5 Posts
    128 Views

    @ufan0 said in can not login, console log show "invalid csrf token", everything occured after upgrade nodebb version(v3.0.1 -> v3.1.4):

    I have paid attention to your site sudonix.org. What does this site mainly do? I am very interested in this and have read many posts you shared.

    Sudonix is a completely free technical resource which works on the principle of pro bono. The owner (me) has 33 years experience in information technology, and is looking to help others with technical problems that they are unable to resolve on their own.

    More information can be found here at https://sudonix.org/about

    The log you are referring to is just part of the output from NodeBB itself. There's nothing particular about it.

  • Help installing nodebb

    Unsolved Technical Support
    2
    0 Votes
    2 Posts
    200 Views

    @LEVI-HAVIV have you installed Nodejs? It appears the npm command (included when installing Nodejs) doesn't exist on your system.

  • 0 Votes
    1 Posts
    1k Views

    I tried to setup nodebb locally but encounter these issues:

    '''
    info sharp Detected globally-installed libvips v8.7.4
    info sharp Building from source via node-gyp
    make: Entering directory '/home/jordanly/JordanLy/My Folder/Sydney-Study/Personal project/nodebb/node_modules/sharp/build'
    TOUCH Release/obj.target/libvips-cpp.stamp
    CXX(target) Release/obj.target/sharp/src/common.o
    In file included from ../src/common.cc:27:
    ../src/common.h:78:20: error: ‘Handle’ is not a member of ‘v8’
    78 | bool HasAttr(v8::Handlev8::Object obj, std::string attr);
    | ^~~~~~
    ../src/common.h:78:37: error: expected primary-expression before ‘>’ token
    78 | bool HasAttr(v8::Handlev8::Object obj, std::string attr);
    | ^
    ../src/common.h:78:39: error: ‘obj’ was not declared in this scope
    78 | bool HasAttr(v8::Handlev8::Object obj, std::string attr);
    | ^~~
    ../src/common.h:78:56: error: expected primary-expression before ‘attr’
    78 | bool HasAttr(v8::Handlev8::Object obj, std::string attr);
    | ^~~~
    ../src/common.h:78:60: error: expression list treated as compound expression in initializer [-fpermissive]
    78 | bool HasAttr(v8::Handlev8::Object obj, std::string attr);
    | ^
    ../src/common.h:79:29: error: ‘Handle’ is not a member of ‘v8’
    79 | std::string AttrAsStr(v8::Handlev8::Object obj, std::string attr);
    | ^~~~~~
    ../src/common.h:79:46: error: expected primary-expression before ‘>’ token
    79 | std::string AttrAsStr(v8::Handlev8::Object obj, std::string attr);
    | ^
    ../src/common.h:79:48: error: ‘obj’ was not declared in this scope
    79 | std::string AttrAsStr(v8::Handlev8::Object obj, std::string attr);
    | ^~~
    ../src/common.h:79:65: error: expected primary-expression before ‘attr’
    79 | std::string AttrAsStr(v8::Handlev8::Object obj, std::string attr);
    | ^~~~
    ../src/common.h:80:38: error: ‘Handle’ is not a member of ‘v8’
    80 | std::vector<double> AttrAsRgba(v8::Handlev8::Object obj, std::string attr);
    | ^~~~~~
    ../src/common.h:80:55: error: expected primary-expression before ‘>’ token
    80 | std::vector<double> AttrAsRgba(v8::Handlev8::Object obj, std::string attr);
    | ^
    ../src/common.h:80:57: error: ‘obj’ was not declared in this scope
    80 | std::vector<double> AttrAsRgba(v8::Handlev8::Object obj, std::string attr);
    | ^~~
    ../src/common.h:80:74: error: expected primary-expression before ‘attr’
    80 | std::vector<double> AttrAsRgba(v8::Handlev8::Object obj, std::string attr);
    | ^~~~
    ../src/common.h:81:48: error: ‘Handle’ is not a member of ‘v8’
    81 | template<typename T> v8::Local<T> AttrAs(v8::Handlev8::Object obj, std::string attr) {
    | ^~~~~~
    ../src/common.h:81:65: error: expected primary-expression before ‘>’ token
    81 | template<typename T> v8::Local<T> AttrAs(v8::Handlev8::Object obj, std::string attr) {
    | ^
    ../src/common.h:81:67: error: ‘obj’ was not declared in this scope
    81 | template<typename T> v8::Local<T> AttrAs(v8::Handlev8::Object obj, std::string attr) {
    | ^~~
    ../src/common.h:81:84: error: expected primary-expression before ‘attr’
    81 | template<typename T> v8::Local<T> AttrAs(v8::Handlev8::Object obj, std::string attr) {
    | ^~~~
    ../src/common.h:81:37: warning: variable templates only available with ‘-std=c++14’ or ‘-std=gnu++14’
    81 | template<typename T> v8::Local<T> AttrAs(v8::Handlev8::Object obj, std::string attr) {
    | ^~~~~~
    ../src/common.h:81:89: error: expected ‘;’ before ‘{’ token
    81 | template<typename T> v8::Local<T> AttrAs(v8::Handlev8::Object obj, std::string attr) {
    | ^~
    | ;
    ../src/common.h:84:37: error: ‘Handle’ is not a member of ‘v8’
    84 | template<typename T> T AttrTo(v8::Handlev8::Object obj, std::string attr) {
    | ^~~~~~
    ../src/common.h:84:54: error: expected primary-expression before ‘>’ token
    84 | template<typename T> T AttrTo(v8::Handlev8::Object obj, std::string attr) {
    | ^
    ../src/common.h:84:56: error: ‘obj’ was not declared in this scope
    84 | template<typename T> T AttrTo(v8::Handlev8::Object obj, std::string attr) {
    | ^~~
    ../src/common.h:84:73: error: expected primary-expression before ‘attr’
    84 | template<typename T> T AttrTo(v8::Handlev8::Object obj, std::string attr) {
    | ^~~~
    ../src/common.h:84:26: warning: variable templates only available with ‘-std=c++14’ or ‘-std=gnu++14’
    84 | template<typename T> T AttrTo(v8::Handlev8::Object obj, std::string attr) {
    | ^~~~~~
    ../src/common.h:84:78: error: expected ‘;’ before ‘{’ token
    84 | template<typename T> T AttrTo(v8::Handlev8::Object obj, std::string attr) {
    | ^~
    | ;
    ../src/common.h:87:37: error: ‘Handle’ is not a member of ‘v8’
    87 | template<typename T> T AttrTo(v8::Handlev8::Object obj, int attr) {
    | ^~~~~~
    ../src/common.h:87:54: error: expected primary-expression before ‘>’ token
    87 | template<typename T> T AttrTo(v8::Handlev8::Object obj, int attr) {
    | ^
    ../src/common.h:87:56: error: ‘obj’ was not declared in this scope
    87 | template<typename T> T AttrTo(v8::Handlev8::Object obj, int attr) {
    | ^~~
    ../src/common.h:87:61: error: expected primary-expression before ‘int’
    87 | template<typename T> T AttrTo(v8::Handlev8::Object obj, int attr) {
    | ^~~
    ../src/common.h:84:26: warning: variable templates only available with ‘-std=c++14’ or ‘-std=gnu++14’
    84 | template<typename T> T AttrTo(v8::Handlev8::Object obj, std::string attr) {
    | ^~~~~~
    ../src/common.h:87:70: error: expected ‘;’ before ‘{’ token
    87 | template<typename T> T AttrTo(v8::Handlev8::Object obj, int attr) {
    | ^~
    | ;
    ../src/common.h:93:9: error: ‘Handle’ is not a member of ‘v8’
    93 | v8::Handlev8::Object input, std::vector<v8::Localv8::Object> &buffersToPersist);
    | ^~~~~~
    ../src/common.h:93:26: error: expected primary-expression before ‘>’ token
    93 | v8::Handlev8::Object input, std::vector<v8::Localv8::Object> &buffersToPersist);
    | ^
    ../src/common.h:93:28: error: ‘input’ was not declared in this scope
    93 | v8::Handlev8::Object input, std::vector<v8::Localv8::Object> &buffersToPersist);
    | ^~~~~
    ../src/common.h:93:70: error: expected primary-expression before ‘&’ token
    93 | v8::Handlev8::Object input, std::vector<v8::Localv8::Object> &buffersToPersist);
    | ^
    ../src/common.h:93:71: error: ‘buffersToPersist’ was not declared in this scope
    93 | v8::Handlev8::Object input, std::vector<v8::Localv8::Object> &buffersToPersist);
    | ^~~~~~~~~~~~~~~~
    ../src/common.h:93:87: error: expression list treated as compound expression in initializer [-fpermissive]
    93 | v8::Handlev8::Object input, std::vector<v8::Localv8::Object> &buffersToPersist);
    | ^
    ../src/common.cc:34:8: error: redefinition of ‘bool sharp::HasAttr’
    34 | bool HasAttr(v8::Handlev8::Object obj, std::string attr) {
    | ^~~~~~~
    In file included from ../src/common.cc:27:
    ../src/common.h:78:8: note: ‘bool sharp::HasAttr’ previously defined here
    78 | bool HasAttr(v8::Handlev8::Object obj, std::string attr);
    | ^~~~~~~
    ../src/common.cc:34:20: error: ‘Handle’ is not a member of ‘v8’
    34 | bool HasAttr(v8::Handlev8::Object obj, std::string attr) {
    | ^~~~~~
    ../src/common.cc:34:37: error: expected primary-expression before ‘>’ token
    34 | bool HasAttr(v8::Handlev8::Object obj, std::string attr) {
    | ^
    ../src/common.cc:34:39: error: ‘obj’ was not declared in this scope
    34 | bool HasAttr(v8::Handlev8::Object obj, std::string attr) {
    | ^~~
    ../src/common.cc:34:56: error: expected primary-expression before ‘attr’
    34 | bool HasAttr(v8::Handlev8::Object obj, std::string attr) {
    | ^~~~
    ../src/common.cc:37:15: error: redefinition of ‘std::string sharp::AttrAsStr’
    37 | std::string AttrAsStr(v8::Handlev8::Object obj, std::string attr) {
    | ^~~~~~~~~
    In file included from ../src/common.cc:27:
    ../src/common.h:79:15: note: ‘std::string sharp::AttrAsStr’ previously declared here
    79 | std::string AttrAsStr(v8::Handlev8::Object obj, std::string attr);
    | ^~~~~~~~~
    ../src/common.cc:37:29: error: ‘Handle’ is not a member of ‘v8’
    37 | std::string AttrAsStr(v8::Handlev8::Object obj, std::string attr) {
    | ^~~~~~
    ../src/common.cc:37:46: error: expected primary-expression before ‘>’ token
    37 | std::string AttrAsStr(v8::Handlev8::Object obj, std::string attr) {
    | ^
    ../src/common.cc:37:48: error: ‘obj’ was not declared in this scope
    37 | std::string AttrAsStr(v8::Handlev8::Object obj, std::string attr) {
    | ^~~
    ../src/common.cc:37:65: error: expected primary-expression before ‘attr’
    37 | std::string AttrAsStr(v8::Handlev8::Object obj, std::string attr) {
    | ^~~~
    ../src/common.cc:40:23: error: redefinition of ‘std::vector<double> sharp::AttrAsRgba’
    40 | std::vector<double> AttrAsRgba(v8::Handlev8::Object obj, std::string attr) {
    | ^~~~~~~~~~
    In file included from ../src/common.cc:27:
    ../src/common.h:80:23: note: ‘std::vector<double> sharp::AttrAsRgba’ previously declared here
    80 | std::vector<double> AttrAsRgba(v8::Handlev8::Object obj, std::string attr);
    | ^~~~~~~~~~
    ../src/common.cc:40:38: error: ‘Handle’ is not a member of ‘v8’
    40 | std::vector<double> AttrAsRgba(v8::Handlev8::Object obj, std::string attr) {
    | ^~~~~~
    ../src/common.cc:40:55: error: expected primary-expression before ‘>’ token
    40 | std::vector<double> AttrAsRgba(v8::Handlev8::Object obj, std::string attr) {
    | ^
    ../src/common.cc:40:57: error: ‘obj’ was not declared in this scope
    40 | std::vector<double> AttrAsRgba(v8::Handlev8::Object obj, std::string attr) {
    | ^~~
    ../src/common.cc:40:74: error: expected primary-expression before ‘attr’
    40 | std::vector<double> AttrAsRgba(v8::Handlev8::Object obj, std::string attr) {
    | ^~~~
    ../src/common.cc:50:20: error: redefinition of ‘sharp::InputDescriptor* sharp::CreateInputDescriptor’
    50 | InputDescriptor* CreateInputDescriptor(
    | ^~~~~~~~~~~~~~~~~~~~~
    In file included from ../src/common.cc:27:
    ../src/common.h:92:20: note: ‘sharp::InputDescriptor* sharp::CreateInputDescriptor’ previously defined here
    92 | InputDescriptor* CreateInputDescriptor(
    | ^~~~~~~~~~~~~~~~~~~~~
    ../src/common.cc:51:9: error: ‘Handle’ is not a member of ‘v8’
    51 | v8::Handlev8::Object input, std::vector<v8::Localv8::Object> &buffersToPersist
    | ^~~~~~
    ../src/common.cc:51:26: error: expected primary-expression before ‘>’ token
    51 | v8::Handlev8::Object input, std::vector<v8::Localv8::Object> &buffersToPersist
    | ^
    ../src/common.cc:51:28: error: ‘input’ was not declared in this scope
    51 | v8::Handlev8::Object input, std::vector<v8::Localv8::Object> &buffersToPersist
    | ^~~~~
    ../src/common.cc:51:70: error: expected primary-expression before ‘&’ token
    51 | v8::Handlev8::Object input, std::vector<v8::Localv8::Object> &buffersToPersist
    | ^
    ../src/common.cc:51:71: error: ‘buffersToPersist’ was not declared in this scope
    51 | v8::Handlev8::Object input, std::vector<v8::Localv8::Object> &buffersToPersist
    | ^~~~~~~~~~~~~~~~
    make: *** [sharp.target.mk:184: Release/obj.target/sharp/src/common.o] Error 1
    make: Leaving directory '/home/jordanly/JordanLy/My Folder/Sydney-Study/Personal project/nodebb/node_modules/sharp/build'
    gyp ERR! build error
    gyp ERR! stack Error: make failed with exit code: 2
    gyp ERR! stack at ChildProcess.onExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23)
    gyp ERR! stack at ChildProcess.emit (events.js:321:20)
    gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:275:12)
    gyp ERR! System Linux 5.3.0-29-generic
    gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
    gyp ERR! cwd /home/jordanly/JordanLy/My Folder/Sydney-Study/Personal project/nodebb/node_modules/sharp
    gyp ERR! node -v v13.7.0
    gyp ERR! node-gyp -v v5.0.5
    gyp ERR! not ok
    npm ERR! code ELIFECYCLE
    npm ERR! errno 1
    npm ERR! [email protected] install: (node install/libvips && node install/dll-copy && prebuild-install) || (node-gyp rebuild && node install/dll-copy)
    npm ERR! Exit status 1
    npm ERR!
    npm ERR! Failed at the [email protected] install script.
    npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

    npm ERR! A complete log of this run can be found in:
    npm ERR! /home/jordanly/.npm/_logs/2020-02-05T08_20_16_954Z-debug.log
    Error installing dependencies!
    message: Command failed: npm install --production
    stdout: null
    stderr: null
    /home/jordanly/JordanLy/My Folder/Sydney-Study/Personal project/nodebb/src/cli/package-install.js:54
    throw e;
    ^

    Error: Command failed: npm install --production
    at checkExecSyncError (child_process.js:611:11)
    at Object.execSync (child_process.js:647:15)
    at Object.installAll (/home/jordanly/JordanLy/My Folder/Sydney-Study/Personal project/nodebb/src/cli/package-install.js:45:9)
    at Object.<anonymous> (/home/jordanly/JordanLy/My Folder/Sydney-Study/Personal project/nodebb/src/cli/index.js:60:18)
    at Module._compile (internal/modules/cjs/loader.js:1151:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1171:10)
    at Module.load (internal/modules/cjs/loader.js:1000:32)
    at Function.Module._load (internal/modules/cjs/loader.js:899:14)
    at Module.require (internal/modules/cjs/loader.js:1040:19)
    at require (internal/modules/cjs/helpers.js:72:18) {
    status: 1,
    signal: null,
    output: [ null, null, null ],
    pid: 7526,
    stdout: null,
    stderr: null
    }
    '''
    Then after installation, I try to start it, here's the command line result

    ./nodebb start

    Starting NodeBB
    "./nodebb stop" to stop the NodeBB server
    "./nodebb log" to view server output
    "./nodebb help" for more commands

    Lastly, I have tried to find where the forum is running (port 4567, forum.examle.com, etc.) but no luck. Please help me, I followed the installation guide here https://docs.nodebb.org/installing/os/ubuntu/#installing-mongodb

  • 0 Votes
    3 Posts
    1k Views

    Best of luck with the forum, @CatchThemAll! It's not released in Canada yet 😦

  • 0 Votes
    1 Posts
    1k Views

    My login page is (almost) entirely blank on my production server but works ok on dev and staging (heroku). I can see the home page and I can create an account and see the profile page, but I cannot login to an existing account:

    0_1458589372352_Screen Shot 2016-03-21 at 12.41.34 PM.png

    There are no javascript errors in the browser and no errors in the server side log:

    21/3 14:33 [24540] - info: NodeBB v0.9.2 Copyright (C) 2013-2014 NodeBB Inc.
    21/3 14:33 [24540] - info: This program comes with ABSOLUTELY NO WARRANTY.
    21/3 14:33 [24540] - info: This is free software, and you are welcome to redistribute it under certain conditions.
    21/3 14:33 [24540] - info:
    21/3 14:33 [24540] - info: Time: Mon Mar 21 2016 14:33:07 GMT-0500 (PET)
    21/3 14:33 [24540] - info: Initializing NodeBB v0.9.2
    21/3 14:33 [24540] - info: Environment: production
    21/3 14:33 [24540] - verbose: * using mongo store at xx.xx.xx.xx:xxxx
    21/3 14:33 [24540] - verbose: * using themes stored in: /var/www/blahblahblah/live/node_modules
    21/3 14:33 [24540] - info: [database] Checking database indices.
    21/3 14:33 [24540] - verbose: Checking dependencies for outdated modules
    21/3 14:33 [24540] - verbose: [notifications.init] Registering jobs.
    21/3 14:33 [24540] - verbose: [meta/css] Minifying LESS/CSS
    21/3 14:33 [24540] - verbose: [sounds] Sounds OK
    21/3 14:33 [24540] - verbose: [meta/templates] Compiling templates
    21/3 14:33 [24540] - verbose: [meta/templates] Successfully compiled templates.
    21/3 14:33 [24540] - verbose: [meta/css] admin.css committed to disk.
    21/3 14:33 [24540] - verbose: [meta/css] stylesheet.css committed to disk.
    21/3 14:33 [24540] - verbose: [meta/js] Minification complete
    21/3 14:33 [24540] - verbose: [hotswap] Router with id plugins replaced successfully
    21/3 14:33 [24540] - verbose: [plugins] All plugins reloaded and rerouted
    21/3 14:33 [24540] - verbose: [hotswap] Router with id auth replaced successfully
    21/3 14:33 [24540] - verbose: [meta/js] Client-side minfile committed to disk.
    21/3 14:33 [24540] - info: NodeBB Ready
    21/3 14:33 [24540] - info: Enabling 'trust proxy'
    21/3 14:33 [24540] - info: NodeBB is now listening on: 0.0.0.0:4567