Dockerで指定したポートマッピングする方法
Dockerでは-pや–publishオプションを用いてポートマッピングを指定できます
文法は次のようになります。
docker run -p <主机端口>:<容器端口> <镜像名称>
例えば、ホストのポート 8080 をコンテナのポート 80 にマッピングするには、以下のコマンドを使用できます。
docker run -p 8080:80 <镜像名称>
なので、ホストマシンの8080ポートにアクセスすると、実際にはコンテナの80ポートに転送されます。
ポートに固有のIPアドレスを指定することもできます。例:
docker run -p 127.0.0.1:8080:80 <镜像名称>
この方法では、ホストの127.0.0.1アドレスの8080ポートのみが、コンテナの80ポートにマッピングされます。
加えて、ポートマッピングを複数指定することもできます。例:
docker run -p 8080:80 -p 9000:9000 <镜像名称>
ホストの8080ポートをコンテナの80ポートと対応付け、9000ポートを9000ポートと対応付けます。
コンテナ内のサービスがホスト上で使われているのと同じポート番号でリッスンしている場合、ポート競合が発生する可能性があります。その場合、別のポート番号に変更するか、競合するサービスを停止することができます。