Simple Node JS Server on Ubuntu MEAN one click image

March 17, 2015 1.7k views
Node.js One-Click Install Apps

Hello there

I tried to setup a simple express server using the advice on here: https://www.digitalocean.com/community/tutorials/how-to-use-the-mean-one-click-install-image#further-information

I followed the steps, and now have my main app.js file in the folder /opt/healthPill. I installed the node modules from here successfully.

I have tried to access the server through http://45.55.154.16:3000 with no luck. I also tried http://45.55.154.16/healthPill:3000, and in both cases I get net::ERRCONNECTIONREFUSED returned in my browser (Chrome) console log.

It is worth noting that I could not run the final command in the tutorial, as I did not have grunt installed, nor a gruntfile.js. As a result, I have tried with and without running the truncated command "NODE_ENV=production PORT=80".

I am sorry if this is a really basic question, I am quite new to server config. All I am trying to do is create a small node server with one express POST endpoint. Running the project locally allows this.

Any help would be much appreciated.

Josh

1 comment
  • I'm not familiar with the MEAN stack but have a couple of ideas, or really questions:

    • is the process running? (the 'ps' command) and look for errors when you start the process
    • what port is it running on? ('sudo netstat -tulpn') (look for local address 0.0.0.0:3000)
    • can you access it locally? 'wget http://127.0.0.1:3000'
    • is the process bound to the external network ( should say 0.0.0.0:3000 for netstat)
    • is the port enabled ('sudo ufw status')
1 Answer

The instructions in the linked tutorial are for running an app based on the MEAN.js stack, but you are by no way limited to using that tool set. The MEAN One-Click image simply gives you Node.js and MongoDB pre-installed with a sample project in /opt/mean

Grunt itself is installed and available system-wide, but of course unless you have a gruntfile.js in your project it isn't very useful. In that case, just start the app as you normally would with npm start or calling node app.js directly.

Have another answer? Share your knowledge.