NPM Errors on NodeBB Install on Amazon Linux



  • Fixed my NodeJS version error, got things to move along further, but still run into issues. Here is the next issue that I found installing the latest NodeBB 1.10.2 onto a fully up to date Amazon Linux instance.

    # ./nodebb setup
    package.json not found.
    Populating package.json...
    OK
    Dependencies outdated or not yet installed.
    Installing them now...
    
    npm WARN deprecated [email protected]: CircularJSON is in maintenance only, flatted is its successor.
    npm WARN deprecated [email protected]: This version is no longer maintained. Please upgrade to the latest version.
    npm WARN deprecated [email protected]: This version is no longer maintained. Please upgrade to the latest version.
    npm WARN deprecated [email protected]: This version is no longer maintained. Please upgrade to the latest version.
    
    > [email protected] install /opt/nodebb/node_modules/benchpressjs
    > cd rust/benchpress-rs && npm install
    
    npm WARN invalid config loglevel="notice"
    npm ERR! Linux 4.14.77-81.59.amzn2.x86_64
    npm ERR! argv "/usr/bin/node" "/bin/npm" "install"
    npm ERR! node v6.14.3
    npm ERR! npm  v3.10.10
    npm ERR! path /root/.npm/neon-cli/0.2.0/package
    npm ERR! code EACCES
    npm ERR! errno -13
    npm ERR! syscall mkdir
    
    npm ERR! Error: EACCES: permission denied, mkdir '/root/.npm/neon-cli/0.2.0/package'
    npm ERR!     at Error (native)
    npm ERR!  { Error: EACCES: permission denied, mkdir '/root/.npm/neon-cli/0.2.0/package'
    npm ERR!     at Error (native)
    npm ERR!   errno: -13,
    npm ERR!   code: 'EACCES',
    npm ERR!   syscall: 'mkdir',
    npm ERR!   path: '/root/.npm/neon-cli/0.2.0/package',
    npm ERR!   parent: 'benchpress-rs' }
    npm ERR! 
    npm ERR! Please try running this command again as root/Administrator.
    
    npm ERR! Please include the following file with any support request:
    npm ERR!     /opt/nodebb/node_modules/benchpressjs/rust/benchpress-rs/npm-debug.log
    npm WARN [email protected] requires a peer of [email protected]^4.9.0 but none is installed. You must install peer dependencies yourself.
    npm WARN [email protected] requires a peer of [email protected]^6.0.0 but none is installed. You must install peer dependencies yourself.
    
    npm ERR! code ELIFECYCLE
    npm ERR! errno 243
    npm ERR! [email protected] install: `cd rust/benchpress-rs && npm install`
    npm ERR! Exit status 243
    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!     /root/.npm/_logs/2018-11-22T02_58_43_071Z-debug.log
    Error installing dependencies!
    message: Command failed: npm install --production
    stdout: null
    stderr: null
    /opt/nodebb/src/cli/package-install.js:54
    		throw e;
    		^
    
    Error: Command failed: npm install --production
        at checkExecSyncError (child_process.js:600:11)
        at Object.execSync (child_process.js:637:13)
        at Object.installAll (/opt/nodebb/src/cli/package-install.js:45:9)
        at Object.<anonymous> (/opt/nodebb/src/cli/index.js:58:18)
        at Module._compile (internal/modules/cjs/loader.js:689:30)
        at Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10)
        at Module.load (internal/modules/cjs/loader.js:599:32)
        at tryModuleLoad (internal/modules/cjs/loader.js:538:12)
        at Function.Module._load (internal/modules/cjs/loader.js:530:3)
        at Module.require (internal/modules/cjs/loader.js:637:17)
    


  • Apparently node is a default install from Amazon. Weird.

    yum remove nodejs
    

    That removed the bad node and npm. Still not working, but closer.



  • Looks to me like an old version of Node is being called, different than the one I'm getting normally.



  • [[email protected] nodebb]# node --version
    v10.8.0
    [[email protected] nodebb]# npm --version
    6.2.0
    


  • Apparently node is a default install from Amazon. Weird.

    yum remove nodejs
    

    That removed the bad node and npm. Still not working, but closer.



  • @scottalanmiller

    Amazon is the shits, Lately we are getting weird IO hangs in our macro machines that costs 9 dollar month, they are doing bad stuff to their EC2, and I dont like there take on Centos with their AMI shit.

    I cant belive I am telling you this but go use Vultr, even if the client wants amazon.



  • @Emad-R said in NPM Errors on NodeBB Install on Amazon Linux:

    @scottalanmiller

    Amazon is the shits, Lately we are getting weird IO hangs in our macro machines that costs 9 dollar month, they are doing bad stuff to their EC2, and I dont like there take on Centos with their AMI shit.

    I cant belive I am telling you this but go use Vultr, even if the client wants amazon.

    We never use Amazon by choice, rarely have issues, but normally it is just too pricey. In this case, though, the drive for Amazon is really strong, they are a completely dedicated to Amazon shop.



  • Have you tried as root?



  • @DustinB3403 said in NPM Errors on NodeBB Install on Amazon Linux:

    Have you tried as root?

    Everything was done as root. Amazon is all root by default.



  • @scottalanmiller said in NPM Errors on NodeBB Install on Amazon Linux:

    pm ERR! Error: EACCES: permission denied, mkdir

    Okay, this error managed to get fixed by removing the crap Node version that Amazon put on there. I'll open another thread with the latest issue. This is crazy.



  • Does Amazon keep SELinux enabled?



  • @black3dynamite said in NPM Errors on NodeBB Install on Amazon Linux:

    Does Amazon keep SELinux enabled?

    No, it is off by default.



  • @scottalanmiller said in NPM Errors on NodeBB Install on Amazon Linux:

    @DustinB3403 said in NPM Errors on NodeBB Install on Amazon Linux:

    Have you tried as root?

    Everything was done as root. Amazon is all root by default.

    yeah, the default user for centos is centos with your KMS or privatekey they create. For Ubuntu is Ubuntu.