Node.js Installation
As always, we'll start from a Debian template.
We'll refer to this article, stating it's the best way to install Node.js !
Create User
We'll first create a dev
user that is going to be part of the sudoers
group (DigitalOcean reference).
> adduser dev ... Enter new UNIX password: Retype new UNIX password: ... > usermod -aG sudo dev
Install NVM (Node Version Manager)
NOTE: the following commands will be executed as dev
user.
Run the Install Script
Check the NVM GitHub repo for the latest version of the script.
> wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.4/install.sh | bash => Downloading nvm as script to '/root/.nvm' => Appending nvm source string to /root/.bashrc => Appending bash_completion source string to /root/.bashrc => Close and reopen your terminal to start using nvm or run the following to use it now: export NVM_DIR="$HOME/.nvm" [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm [ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
In case you'd like to better grasp what the script exactly does, and what files it involves, you can refer to https://github.com/creationix/nvm#manual-install
Choose the Node.js Version to Install
First you can list the installed Node.js versions:
> nvm list nvm list N/A node -> stable (-> N/A) (default) iojs -> N/A (default)
Next you can list the available Node.js versions:
> nvm ls-remote v0.1.14 v0.1.15 v0.1.16 v0.1.17 ... ... v7.9.0 v7.10.0 v8.0.0 v8.1.0 v8.1.1 v8.1.2
The list being very long, it is possible to reduce the output using something like: $ nvm ls-remote | tail -n9
to only display the last 9 versions or $ nvm ls-remote | grep “v7”
to only view version 7…
Install NVM Version and Set Default
<Code
nvm install 7.10.0
</Code>
When you have many Node.js versions, change the default with:
> nvm use 8.0.0 > nvm alias default 8.0.0
To check the current default version:
> node -v
Upgrade NPM to the Last Version
> npm -v 4.2.0 > npm install -g npm > npm -v 5.0.3
Increases the Amount of inotify Watches
> echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p