Manual deployment
Before we can automatically deploy our software, we must first manually deploy our software. Or, at least, make sure everything is in place before we can automate it. Deploying is a bit hard because we do not really have anything to deploy to, but at least we can deploy to either our Linux VM or our Windows host.
In this chapter we are going to work with some dependencies that are required to run our software, like NGINX and our database software. The installation and configuration of such tools can be automated, but this is outside the scope of this book. You will also often find other teams, such as network administrators, are responsible for delivering necessary (virtual) servers with the necessary installed software.
Installing NGINX
The first thing we need to do before we can do anything else is install NGINX (https://www.nginx.com/). NGINX is an HTTP server, reverse proxy, and IMAP/POP3 proxy server. With NGINX, we can host our Node.js application using PM2 and use NGINX...