2016-11-17 3 views
0

Ich arbeite mit Docker auf einem Ubuntu server, und ich habe einen Apache2 Container.Docker und Apache2, entfernen Port von URL

Dieser Container funktioniert, wenn ich auf http://my-server-ip:8080 gehe, kann ich meine Ordner und Dateien im Ordner /var/www/html meines Apache2-Containers sehen.

/var/www/html im Container ist mit dem Ordner /home/me auf meinem Rechner verknüpft. Also arbeite ich direkt in /home/me.

Jetzt muss ich einen VirtualHost hinzufügen, um eine Subdomain in einen bestimmten Ordner umzuleiten /var/www/html/portfolio.

So verbinde ich zu meinem Container und fügen Sie einen neuen Host wie:

<VirtualHosT *:80> 
    ServerAdmin [email protected] 
    DocumentRoot /var/www/html/portfolio 
    ServerName my.subdomain.com 
    ServerAlias my.subdomain.com 
</VirtualHost> 

Das Ergebnis ist, wenn ich zu my.subdomain.com:8080 gehe es in Ordnung ist, kann ich den Inhalt von /var/www/html/portfolio lesen, aber meine Frage ist:

Wie kann ich das: 8080 in der URL entfernen?

+0

Haben Sie überprüft: http://webmasters.stackexchange.com/questions/23228/how- do-i-hide-the-port-in-my-url und http://stackoverflow.com/questions/11330552/rewrite-rule-to-hide-port-from-url-of-rails-server auch http: //stackoverflow.com/questions/13155529/how-to-remove-port-number-from-http-localhost8123-to-use-as-http-localhost? – Birdy

+0

Wie wird Ihr Container ausgeführt? hast du -p 8080: xxxx da? – user3012759

Antwort

0

Sie haben 2 Möglichkeiten:

  1. Publish Containers auf port 8 0, diesen Docker Host erfordert port 80 als einen freien Port zu haben.

  2. eine andere Verwendung nginx auf Port 80 und reverse prox y zu Ihrem Apache-Container, der auf Port läuft 8080.