node-installer.sh/README.md

3.0 KiB

Easy Install node.js

| Sponsored by Daplie |

Automated node.js installers for OS X and Ubuntu

node.js only (no dev tools)

# install node.js without development dependencies
curl -fsSL bit.ly/node-installer | bash -s --no-dev-deps

# using wget instead of curl (Ubuntu)
wget -nv bit.ly/node-installer -O - | bash -s --no-dev-deps

node.js + dev tools

Install node.js and basic development tools - git, node, gcc, pkg-config, etc

curl -fsSL bit.ly/node-installer -o ./node-installer.sh; bash ./node-installer.sh --dev-deps

# or wget
wget -nv bit.ly/node-installer -O - ./node-installer.sh; bash ./node-installer.sh --dev-deps

Note: bit.ly/node-installer simple redirects to https://git.coolaj86.com/coolaj86/node-installer.sh/raw/master/install.sh

Screencast

How to Setup a VPS for node.js Development - (3:06 installing node.js)

Choosing a specific version

echo "Current node.js version is $(curl -fsSL https://nodejs.org/dist/index.tab | head -2 | tail -1 | cut -f 1)"
# To install a specific version rather than defaulting to latest
# latest version at time of writing are v8.9.0 and v9.0.0
echo "v8.9.0" > /tmp/NODEJS_VER

Choosing an install location

Just set BOTH NODE_PATH and NPM_CONFIG_PREFIX. The install path will be the preceding lib/node_modules (which you usually want to be the same as NPM_CONFIG_PREFIIX anyway).

export NPM_CONFIG_PREFIX=/tmp/user/local
export NODE_PATH=/tmp/user/local/lib/node_modules

curl -fsSL bit.ly/node-installer -o ./node-installer.sh; bash ./node-installer.sh --dev-deps

# If you want to add the install location to your PATH
PATH=$PATH:/tmp/user/local/bin

Notes

Apple OS X

First you need to Install XCode Command Line Tools

xcode-select --install

Then you need to Accept the XCode License by running any command installed by Xcode with sudo. We'll use git.

sudo git --version

You can scroll to the bottom by hitting shift+G (capital G).

Type agree and hit enter to accept the license.

Now you can install node.js

curl -fsSL bit.ly/node-installer -o /tmp/node-installer.sh; bash /tmp/node-installer.sh --dev-deps

TODO: Make it easier to accepting the license (automatic?)

Ubuntu Linux

wget -nv bit.ly/node-installer -O /tmp/node-installer.sh; bash /tmp/node-installer.sh --dev-deps

Other things you should know

This is what gets installed:

  • rsync
  • curl
  • wget
  • git
  • xcode / brew / build-essential / pkg-config / gcc
  • node (including npm)
  • jshint

NOTE: If you're running a node.js server on an edge server, I'd highly recommend that you also install fail2ban to secure ssh - especially if you haven't switched your server to use key-only authentication.