The easiest way to get started is using Docker. You can self-host most software using Docker straight from their Github with one command or copy-paste config.
Do NOT expose your services to the internet if you don’t know what you’re doing. Use it locally using IP:port. If you want to use your services remotely, use a VPN tunnel like Wireguard (Available on Android and iOS too). Modern routers already support it. Tailscale is also an option.
When you start exposing services, I can recommend NPM as your proxy for easy host and certificate management. Expose as little as possible!
For added security when exposing applications to the internet, expose your port using a VPS or Cloudflare and tunnel to your home using Tailscale or Wireguard.
To not get overwhelmed you should start small and improve as you go. You don’t need to start with a datacenter in your garage right away. The most important thing is that you have fun along the way :)
Great projects to get started:
gofsckyourself@lemmy.world 1 day ago
To add to that, to effectively use docker and basically anything important for self-hosting is to learn the basics of Linux.
A good resource for that is learnlinux.tv