I've found numerous installation instructions for Node.js but they all seem so complicated -- I'm not a super sys admin but I can get around. I have yum on the system, but I didn't find any node.js packages, and I'm not sure how to compile code on the server or where to put it.
|
To create an RPM package, you can use FPM:
Now make the
Then install and check the version:
Source: https://github.com/jordansissel/fpm/wiki/PackageMakeInstall |
|||||||||||||||||||
|
|
The gist "Installing Node.js via package manager" does NOT contain instructions for installing nodejs on CentOS any more. Since Fedora 18, nodejs becomes part of the standard repo. I try "epel-fedora-nodejs" repo, and find it no longer update, leaving the version at the outdated 0.6.0. The good news is that, we have nave, a Virtual Environments for Node, to help us. https://github.com/isaacs/nave Installing nodejs is dead easy now.
In the nave.sh file, you may have to change the local urls to the match with the latest dist structure of nodejs. For 0.11.0 I changed the nave.sh to have the following URL "http://nodejs.org/dist/v$version/node-v$version-linux-x64.tar.gz" |
|||||||
|
|
I can confirm that the method Chris explained in his solution does work in CentOS 5.4 (i've done it a minute ago :))
PS: of course you must be root (or use sudo) in order to install that.. Edit: thank you David for pointing out in the comments below that the nodejs.tchol.org site seems not to be active anymore.. Besides installing from source (which is always an option) maybe there is still an alternative: here I read that "node.js has been accepted into Fedora Rawhide as of December 2012 and will be available in Fedora 18.", so maybe it will eventually get into the standard CentOS repositories I'll have a look at this.. |
|||||||||||||||||||||
|
|
For CentOS
|
||||
|
|
|
As noted above, "tchol.org" is gone, leaving CentOS folks looking at either abandoning use of a package manager, or switching to another OS. I made a pact with myself against every doing the former (again) on all but experimental / dev boxes. Fortunately, there are rpms still available at: http://patches.fedorapeople.org/oldnode/stable/el6/x86_64/ Just ignore the rpm for the repo-installer, which directs yum to the defunct site. That should buy us a little time, unless / until they become too obsolete. I'll keep my eyes open for newer repos, and post back if I find them. |
|||||
|
|
I have some pretty straight-forward instructions, along with a .spec file here: http://www.chrisabernethy.com/installing-node-js-on-centos-redhat/ You'll be compiling this from source, so you will need to ensure that you have all of the necessary packages for doing that on your system (gcc and friends). This set of instructions is for building an RPM, so if you are missing any required packages, rpmbuild will let you know which ones you need to install first. |
|||||||||
|
|
There's one more approach I haven't seen listed in any of the other answers, and that is to use the binary distributions for Linux which have been published since 0.8.6 Here's the script I use:
Or, if you want a specific version (e.g. to stay on the 0.8 series):
And for me on CentOS 6.3, I had to add the following links so that node and npm commands worked from either regular user or from sudo. Might not be needed depending on your version.
Frankly, the situation for node.js on CentOS/RHEL is rather bad, as none of the repos include node.js (see related question here). This answer has the same disadvantages as previously mentioned for compiling from source. |
||||
|
|
|
For Ubuntu, this worked for me for version 0.4.10
|
|||
|
|
|
You'll also need npm
|
|||
|
|
|
This worked for me on CentOS 5.7:
|
|||
|
|
|
Below code worked pretty well on CentOS 6
It does not work anymore, http://nodejs.tchol.org is not online anymore. |
||||
|
|
|
I went thru the task of doing this installation myself on RHEL 5.8 not too long ago. Unfortunately, with nodejs.tchol.org going offline, the only option is to build it from source. However, the build process got quite a bit complicated as the build script involves python code that doesn't work with the default version of Python on RHEL. After a lot of trial and error (and a lot of googling), I found this blog post which basically describes a step to step on the following tasks required. a. Install Python 2.6 b. Setup that version of python as an alternate version, then setting it as default c. configure and install node.js d. Switching Python back to the default 2.4 version. The key is that you should switch back to Python 2.4 afterwards; otherwise, simple things like yum will fail. http://www.robeesworld.com/blog/31/installing_node_js_0_8_under_centos_5_8 |
|||
|
|
|
If you have CentOS 6.x, and have enabled the EPEL repository, you can use yum to install node/npm:
After the installation is complete, check to make sure node is setup properly:
(Should return something like |
|||
|
|