Haben "ports" auf docker-compose.yml den gleichen Effekt wie EXPOSE auf Dockerfile?

10

Deklariert auf einem docker-compose.yml:

%Vor%

und auf Dockerfile:

%Vor%

haben den gleichen Effekt?

    
Vituel 22.02.2016, 08:22
quelle

1 Antwort

14

Nein: EXPOSE ( EXPORT existiert nicht) öffnet nur den Port im Container und macht ihn für andere Container zugänglich.

"3306:3306" veröffentlicht den Port auf dem Host, sodass der gleiche Port vom Host aus zugänglich ist.

Siehe Dockerfile EXPOSE :

  

Die Anweisung EXPOSE informiert Docker darüber, dass der Container zur Laufzeit die angegebenen Netzwerkports überwacht.
EXPOSE macht die Ports des Containers nicht für den Host verfügbar. Dazu müssen Sie das Flag -p verwenden, um eine Reihe von Ports zu veröffentlichen.

Dies ist der Abschnitt docker-compose.yml ports . Es ordnet den Container-Port dem Host zu.

    
VonC 22.02.2016, 08:38
quelle

Tags und Links