Prinzipiell sehe ich in deinem Use Case keinen Grund zur Nutzung von nginx.
Nextcloud läuft am besten mit Apache2, finde ich. Apache2 kann auch so ziemlich alles, was nginx kann.
Nur, dass nginx (im Reverse Proxy only Betrieb) einfacher zu konfigurieren und performanter ist. Den Performanceunterschied würdest du in deinem Use Case aber vermutlich nicht mal merken. Das sind dann Sachen, über die man bei größeren Geschichten nachdenken sollte.
Sofern der Apache2 nur auf Port 80 lauscht, bedeutet das, dass kein HTTPS genutzt wird (zu deutsch, die Daten werden in Klartext übertragen). Das möchtest du nicht, glaub mir.
Ein gültiges SSL Zertifikat bekommst du von LetsEncrypt, am besten via Certbot. Für die Konfiguration schaust du dir mal Mozillas SSL Config Generator an.
Wenn du prüfen möchtest, ob deine Konfiguration korrekt ist, schaust du dir mal Mozillas Observatory an. 
Du kannst durchaus mehrere Webanwendungen parallel über Port 80/443 ausliefern. Dafür nutzt du dann einfach Subdomains (oder mehrere Domains) und erstellst dir entsprechende Konfigurationen mit den jeweiligen virtual Hosts in /etc/apache2/sites-available/.
Sofern du ein eigenständiges Programm über eine Subdomain ausliefern möchtest (z.B. Gitea, GitLab, Grafana, ...), ist dies auch möglich. Das Zauberwort schimpft sich dann "reverse Proxy". 
Ich möchte hier allerdings trotzdem an die Worte der anderen Forenmitglieder appelieren - ein Server am freien Netz ist keine Testumgebung und nichts zum daran lernen. Getestet wird lokal. Wenn da dann alles läuft und passt, übernimmt man es in die Produktivumgebung am freien Netz. Vorher nicht, auch nicht "mal kurz".
Ich möchte dir deinen Bedarf an einem Server als Programmierer nicht absprechen, und denke, dass du in der Lage sein kannst, sowas zu betreiben. Aber bitte bringe die notwendige Sensibilität auf und handele bedacht, statt voreilig. Wir meinen es nicht böse, wir sprechen da viel mehr aus Erfahrung.