Where to host Node.js applications

Node.js applications can be hosted in many places, depending on your needs. This is a list of all the various options you can use

The following is an exhaustive list of options you can explore when you want to deploy your application and make it publicly accessible.

I will list from the simplest constraints to more complex and powerful options.

The simplest option: local tunnel

Even if you have a dynamic IP or are under NAT, you can use a local tunnel to deploy applications from your computer and process requests.

This option is suitable for some quick tests, demo products or sharing applications with a very small number of people.

A very good tool available on all platforms isEngrock.

To use it, you can typengrok PORTAnd the PORT you want is exposed on the Internet. You will get a ngrok.io domain, but with a paid subscription, you can get a custom URL and more security options (remember, you are opening your computer to the public Internet).

Another service you can use ishttps://github.com/localtunnel/localtunnel

Zero configuration deployment


glitchIt's a playground, a way to make your apps build faster than ever, and view them in real time on your own glitch.com subdomain. You currently cannot have a custom domain, and there are somelimitIn place, but making prototypes is really great. It looks interesting (it’s a plus sign), and it’s not a stupid environment-you can use all the features of Node.js,CDN, Used for secure storage of credentials, GitHub import/export, etc.

Provided by the company behind FogBugz and Trello (and the co-founders of Stack Overflow).

I often use it for demonstration purposes.

Code pen

Code penIt is an amazing platform and community. You can create projects with multiple files and deploy them with custom domains.


One way to publish an application without having to manage the server at all isServerless. Serverless is when you publish your application asFeatures, And they respond on network endpoints (also called FAAS-Function as a Service).

The very popular solution is

They all provide an abstraction layer that can be used to publish on AWS Lambda and other FAAS solutions based on Azure or Google Cloud products.


PAAS stands for Platform as a Service. These platforms eliminate many of the things you should worry about when deploying applications.

Now times

Zeit is now calledWiesel

Zeit is an interesting choice. You just enternowIn your terminal, it is responsible for deploying your application. There is a free version that has limitations, while the paid version is more powerful. You forgot that there is a server here, you just deployed the application.




Heroku is an amazing platform.

This is a great articleStart using Node.js on Heroku.

Microsoft Azure

Azure is a Microsoft Cloud product.

Understand howCreate a Node.js web application in Azure.

Google Cloud Platform

Google Cloud is an amazing structure for your application.

They have a goodNode.js documentation section

Virtual private server

In this section, you will find the usual suspicious objects, sorted from higher user-friendliness to lower user-friendliness:

Since they provide an empty Linux computer on which to work, there is no specific tutorial for them.

There are more options in the VPS category, these are just the options I use and I would recommend you to use them.

Bare metal

Another solution is to get a bare metal server, install a Linux distribution, connect it to the Internet (or rent one every month, just like you can useVultr bare metalservice)

Download mine for freeNode.js manual

More node tutorials: