Some items in the next sessions require the use of an external server or service to provide, or render, information that can't be done from a user's point of view. For example, a web server will render web pages written in the editor and uploaded to the server. Another example is to have java program pull information from a database. This could be done all on the user's workstation, but there is additional knowledge that is gathered by developing the code locally, deploying the code to another piece of equipment and have it render the information instead.
Each of the following topics will be able to render one basic function and hopefully will be able to be tied together. Each item is a topic by itself, and in depth knowledge is beyond what can be covered here.
Ultimately there are many different ways to host applications. My preference is to put each server into it's own isolated region. That region could be within it's own separate physical server, a separate virtual server, or more recently it's own Docker container.