Installing NodeJS and Express on CentOS

Updated on March 6, 2015
Installing NodeJS and Express on CentOS header image

This tutorial will show you how to install Node.js and Express.js on CentOS 6 (or CentOS 7). You can use Node.js to build rapid, scalable web apps with JavaScript. Installation is very easy - just follow the steps below. Most of the work is done for you by the YUM package manager.

1. Download Node.js

You will want to download the latest stable version of Node.js, which can be done by running the command below. It runs a script that automatically steps you through the installation process. The script is downloaded directly from Joylent (the makers of Node.js) at their NodeSource repository.

 cd /tmp
 curl -sL https://rpm.nodesource.com/setup | bash -

2. Install Node.js

Once the script detects that you do not have Node.js installed, enter the following command to begin the install via the yum package manager.

 yum install -y nodejs

3. Install build tools (optional, but recommended)

To compile and install native Node.js addons from npm (node package manager), you will need to install these build tools. It is not essential, but it will save you some headaches when doing npm install package in the future.

 yum install gcc-c++ openssl-devel make

4. Install Express.js

This will pull Express.js from the repository in npm and automatically install it globally (that's what the -g is for).

 npm install -g express-generator

5. Create a non-privileged user (recommended)

For security reasons, create a regular system user and run node under that account. This will help secure your server in the event that a vulnerability is exploited in Node.js.

 useradd username
 passwd username

This creates a user and sets the password for that account. Now, log back out and log back in as the new user.

6. Create a project

 express expressproject
 cd expressproject
 npm install

If all went well, you should see something similar to this:

 > expressproject@0.0.0.0 start /exampleuser/expressproject
 > node ./bin/www

To fully test it, launch your web-browser and type the IP address of your VPS at port 3000 in the URL bar. It should look similar to this (replace 0.0.0.0 with your VPS IP):

 http://0.0.0.0:3000

When you navigate to that URL, you will see the message Welcome to Express on the page.

Congratulations! You've now setup Node.js with Express! Go forth and create awesome things!