Defining the requirements
We have the application working on our computer, but we need to deploy it to the public internet. So, we need to define the requirements in order to choose the best solution for our needs.
First of all, we need to consider the following technical questions:
- What is the target environment (bare metal, VMs, containers, cloud solutions...)? As our application uses Node.js and standard NPM libraries, we can deploy it easily directly in bare metal machines or VMs. Other solutions are also possible but require some work to be done in terms of configuration.
- What is the target platform (AWS, Azure, GCP, DigitalOcean, Heroku...)? In our case, we don’t expect much traffic or many users at all. Also, we are not working in a team and don’t have any specific requirements, such as a Service-Level Agreement (SLA). We can safely choose to use the most simple provider in terms of the onboarding process that also has competitive pricing. In our...