Once you have your hardware sorted, whether that’s physical hardware (On-Premises) or with a Cloud provider. The next step is the purchase a Domain Name such as example.com. A domain name resolves into an IP address which is attached to your Router/VPS. This makes it far easier to access your services than to remember than an IP!
With a domain name, you can use sub-domains such as cloud.example.com, storage.example.com and demo.example.com. These can link to completely different IP’s/Servers but we'll be linking them all to your server.
A reverse proxy allows you to host multiple applications on the same IP address, as it will intelligently route traffic to the appropriate destination. This may sound a little confusing, but we'll go through the process of setting this up later.
There are many different domain registers where you can purchase a domain name, these usually cost under £10 a year, just watch out for high renewal fees. I would recommend Porkbun.
You can in fact get a free domain name from freenom.com (.cf .ga .tk .ml .gq) however you never get something for nothing! You can only purchase it for up to 1 year, you have to renew it in the last two weeks (No email warning). The other issue is that many service providers (DNS Providers, Email Hosts) place restrictions on these domains due to the high-level of spam they cause.