How To Set Up a Node.js Application for Production

[Node.js](https://nodejs.org/en/) is an open-source JavaScript runtime environment for building server-side and networking applications. In these guides we'll set up a production-ready Node.js environment on a single server. This server will run a Node.js application managed by [PM2](http://pm2.keymetrics.io/), and provide users with secure access to the application through an Nginx reverse proxy and HTTPS using a free certificate provided by [Let's Encrypt](https://letsencrypt.org/). Choose your operating system below to get started.

CentOS

7

How To Set Up a Node.js Application for Production on CentOS 7

Learn How To Set Up a Node.js Application for Production on CentOS 7

Debian

10

How To Set Up a Node.js Application for Production on Debian 10

Learn How To Set Up a Node.js Application for Production on Debian 10
9

How To Set Up a Node.js Application for Production on Debian 9

Learn How To Set Up a Node.js Application for Production on Debian 9
8

How To Set Up a Node.js Application for Production on Debian 8

Learn How To Set Up a Node.js Application for Production on Debian 8

Rocky Linux

9

How To Set Up a Node.js Application for Production on Rocky Linux 9

Learn How To Set Up a Node.js Application for Production on Rocky Linux 9

Ubuntu

22.04

How To Set Up a Node.js Application for Production on Ubuntu 22.04

Learn How To Set Up a Node.js Application for Production on Ubuntu 22.04
20.04

How To Set Up a Node.js Application for Production on Ubuntu 20.04

Learn How To Set Up a Node.js Application for Production on Ubuntu 20.04
18.04

How To Set Up a Node.js Application for Production on Ubuntu 18.04

Learn How To Set Up a Node.js Application for Production on Ubuntu 18.04
16.04

How To Set Up a Node.js Application for Production on Ubuntu 16.04

Learn How To Set Up a Node.js Application for Production on Ubuntu 16.04
14.04

How To Set Up a Node.js Application for Production on Ubuntu 14.04

Learn How To Set Up a Node.js Application for Production on Ubuntu 14.04
12.04

How To Use PM2 to Setup a Node.js Production Environment On An Ubuntu VPS

Learn How To Use PM2 to Setup a Node.js Production Environment On An Ubuntu VPS

Become a contributor for community

Get paid to write technical tutorials and select a tech-focused charity to receive a matching donation.

DigitalOcean Documentation

Full documentation for every DigitalOcean product.

Resources for startups and SMBs

The Wave has everything you need to know about building a business, from raising funding to marketing your product.

Get our newsletter

Stay up to date by signing up for DigitalOcean’s Infrastructure as a Newsletter.

New accounts only. By submitting your email you agree to our Privacy Policy

The developer cloud

Scale up as you grow — whether you're running one virtual machine or ten thousand.

Get started for free

Sign up and get $200 in credit for your first 60 days with DigitalOcean.*

*This promotional offer applies to new accounts only.