Ich mach es So:
Entweder
- Keine Ports öffnen (also im composer file keine Ports angeben) oder
- die Ports als 127.0.0.1:PORT:PORT angeben
In NPM:
- Einen Proxy Host hinzufügen
- Als IP die interne des Containers oder den Namen (automatische DNS Auflösung)
- Sub Domain wählen
- Zertifikat wählen (bei mit ein Wildcard Zertifikat)
- HTTPS immer verwenden auswählen
- Fertig.
Wichtig NPM und der Container müssen in einem Netzwerk sein:
- NPM joint jedem Composer Netzwerk
- Man verwendet ein gemeinsames
Am Ende kann ich dann auf den Service mit Sub.Domain.com zugreifen und auch nur so - also nicht mit IP:PORT DER ANWENDUNG - die Standard IP hat dann nur zwei Ports offen (bzw. 3 für SSH oder doch zwei wenn man auf 80 verzichtet)
Des weiteren kann man so sicherstellen dass HTTPS verwendet wird und Basis Auth ist auch möglich