Docker

Dockerのexposeとpublishの違い

dockerのexposeとpublishの違いを簡単にまとめます。

dockerのexposeとpublishの指定方法は以下の3パターンがあります。


Dockerのexposeとpublishの設定

1.exposeもpublishも指定しない

2.expose

3.publishの指定をする


1.どちらも指定しない

containerの外部からアクセスできない


2.exposeののみ指定

exposeしたportにはdockerの内部のネットワークに公開したportとなる。

他のcontainerからアクセス可能。dockerの外部にはportを公開しない。


3.exposeとpublishを指定する場合

exposeしたportを、publishによってDocker外部のネットワークに公開する。


その為


1.-Pオプション

expose した全てのportを外部公開。

docker run image --expose=3000 --expose=2000 -P

=> port3000と2000をdockerの外部に公開