I once was fixing someones computer booting with Bluescreen, because Windows 7 thought it found newer drivers for USB 3.1, and those newer were causing BSOD
I would not recommend docker-compose for a begginer. As first, one should learn basics, then optionally switch to docker-compose to automate stuff he already know. Also bind mount volumes are a better solution for long term storage than default volumes, since docker will never delete those, and their path in host system is configurable.
Technically any connection made from inside your local network can expose it to the outside world for someone outside. Browsing web, some nasty js and here you go.
I personally have some stuff hosted on my home hardware, cant share details obviously, but even the ip address of those services is not my home ip address. Also extensive use of rootless containers and other cool stuff is making me want to keep things like that.