My suggestions:
1. Start with a specific OS on a linux box. Ubuntu is a standard one that you can just start with.
2. Install your application first without docker. If binary (e.g. Golang), you can literally copy the binary (make sure you build it for your OS on the server) and then run it either using something ike supervisor/systemd
3. Then, use a reverse proxy like Caddy in front of it for SSL and actual domain.
4. Get a custom domain from any provider and set the DNS for that domain to point to the IP address of this server.
5. If you want to get real fancy, instead of pointing d0main directly to the IP of the server, get a DNS with cloudflare and point there. Then configure cloudflare to point to the actual server (a.k.a origin server) This way, you get additional benefits like WAF, DDOS protection etc. Even cloudflare free plan offers this with some limits.
Then repeat the process in 2,3 but with docker container.
You can do all of this easily in ChatGPT etc nowadays by asking:
- I want to install a Go App on an Ubuntu VPS using systemd/supervisor and put Caddy as reverse proxy in front. Then I will want to use a custom domain where DNS is hoted with Cloudflare which ultimately points to Caddy.
It is not that hard. Not to learn at least.