2016-08-02 36 views
-2

Ich habe nichts über das Ausführen von vielen verschiedenen Webapp-Container auf einem Host gefunden. So habe ich zum Beispiel zwei Container. Auf der ersten laufe ich einen Apache mit owncloud und auf der zweiten starte ich einen Wordpress Blog. Beide müssen auf Port 80 laufen. Wie könnte ich damit umgehen?Viele Docker Container auf einem Host

Dank

Antwort

0

Sie können -p Flag verwenden Ports zur Karte:

docker run -p 8080:80 owncloud 
docker run -p 8081:80 wordpress 

Und als Zugang ownCloud mit http://yourdomain.com:8080/ und Wordpress mit http://yourdomain.com:8081/

Es ist üblich, docker mit einem Reverse-Proxy wie HAProxy zu kombinieren. Mit einem Reverse Proxy können Sie eine Anfrage an owncloud.yourdomain.com an Ihren eigenen Cloud-Container und von wordpress.yourdomain.com an den Wordpress-Container übergeben. (Oder yourdomain.com/owncloud und yourdomain.com/wordpress)

+0

Jetzt verwende ich HAproxy. Es ist wirklich cool und du hast viele Möglichkeiten. –

0

Sie werden verschiedene Ports auf dem Host verwenden müssen (ansonsten wird ein Fehler Starten des zweiten Behälters erhalten). Um dies zu vermeiden, setzen Sie einen der 80 internen Ports einem anderen Port im Host aus. Zum Beispiel beim Laufen 'Docker run':

docker run -p 8081:80 name_of_your_image 

Dies wird den Port 80 des Servers im Hafen 8081 in dem Host exportieren.

0

, wenn Sie möchten, dass Sie docker-gen verwenden können, ist es ein einfaches Skript, in dem Sie die Docker mit einem einfachen Umgebungsvariablen ausgleichen können (auf dem Behälter). Dies ist die Dokumentation:

https://github.com/jwilder/docker-gen