iantearle.com

Media Temple Grid and Node.js

This is a short story of my efforts to get node.js installed on my grid server from Media Temple. I love the grid, it’s super simple to maintain, easy to set up and as a web designer I can do most things with it. Most things that is, except for installing node.

Node is great. It’s super handy for mobile development and firing up back ends quickly. I have analytics running on my own node server hosted on an EC2 from Amazon, but I wanted the management of the server with Media Temple, all my eggs in one basket, one bill, and I know what I am spending. Unfortunately the grid isn’t really compatible with node, as historically you need to be logged in as root (sudo). I say historically as a small line in the configuration file helps us out in installing node on the grid server.

tl;dr

$ git clone https://github.com/joyent/node.git
$ cd node
$ mkdir ~/opt
$ ./configure --prefix=~/opt/
$ make
$ make install
$ nano ~/.bash_profile
$ export PATH=~/opt/bin:${PATH}

This is great. Node is installed, I can use it. Bash finds it, - however you may need to restart your terminal.

Be sure to ssh as serveradministrator and only proceed if you know what you are doing. But all that said, what next? Time to install a product that requires node? Maybe. It depends what packages you want to install. Like I mentioned earlier I wanted to install my analytics server. Unfortunately Countly still requires root access. I am not really optimistic that I’ll be able to find a work around, as Countly includes a high number of dependencies. But we shall see.

Perhaps one day Media Temple will offer us a grid with some kind of super user access? Or an out of the box Grid with node instance pre installed.

Posted On: Thursday, April 11th, 2013 @ 12:25 pm by Ian Tearle


6 Comments

Drew at (mt) Media Temple says:

Thanks for the article Ian, very insightful. As you mentioned, we do not provide root access on the (gs) Grid-Service as it is a shared hosting service. So unfortunately you will be out of luck wherever root is needed. If you can get node.js to work on the (gs) Grid-Service by installing binaries that should be fine, but in general we do not recommend node.js on the (gs) Grid-Service at all. If you have any questions, we're available 24/7 on the phone, chat or Twitter.

Drew J
(mt) Media Temple
@MediaTempleHelp

Posted On: Thursday, April 11th, 2013 @ 3:22 pm

Clemente G says:

I'm struggling with this myself too. I think MT tries to make up for this with their VE servers. I REALLY want node so I can host my own apps instead of them being on Heroku.

Posted On: Monday, May 27th, 2013 @ 2:43 am

Adel says:

Great! Will try it when I get home!

Posted On: Tuesday, July 9th, 2013 @ 3:11 pm

Geoffrey Booth says:

I followed these instructions. One note:
./configure — prefix=~/opt/
should be:
./configure — prefix=/home/123456/users/.home/opt
where 123456 is your grid number. The tilde didn't work for me.

I can run the node interpreter, and run a command like:
node hello.js
but using Node to create a server and listen on a port doesn't seem to work for me. Node executes the file just fine, but my browser can't see the Node-generated server when I try to open my domain at the specified custom port. In other words, I run something like the six-line webserver example on the home page of http://nodejs.org, but then going to http://myserver.com:1337 in my web browser times out.

Is there any way to connect to the Node process I've been able to run? If not via a browser directly, perhaps through PHP or Apache?

Posted On: Friday, August 2nd, 2013 @ 4:41 am

Arjun says:

Hi! I find that ./configure — prefix=~/opt/ does something strange… it creates a new directory called "~" in the node directory and upon make install it installs node there. I have to instead do:
./configure — prefix=/home/XXXXX/users/.home/opt
XXXXX being your grid server number. Hope this helps someone!

Posted On: Tuesday, September 17th, 2013 @ 3:28 pm

Arjun says:

Oops, I guess Geoffrey already mentioned that!

Posted On: Tuesday, September 17th, 2013 @ 3:29 pm

Leave a comment

Be kind

If you would like to discuss anything about this post, please be polite and add your comments below.


 

Additionally

No HTML is allowed. All links, and new lines will be automagically converted to HTML for you.
Notice to spammers, all links will be sanitized with rel="nofollow".


Contact Me

Get In Touch

If you would like to discuss anything about your next project please drop me a line.


 

Budget

Websites: ~£1000
Web Apps: ~£4000
Native Apps: ~£8000

Additionally

No matter how small your project is, or if the budgets above scare you, please do get in touch, I shall always listen and will advise freely alternative ideas or solutions. If you are a charity, let's talk!


Find Me On