dockerイメージポートのマッピング方法
Docker ポートをマッピングする方法が 2 つあります。
- コマンドライン引数を使用: コンテナを実行する際には、-p引数を使用してマップするポートを指定します。例: docker run -p 8080:80 nginx は、ホストの8080ポートを、コンテナの80ポートにマッピングします。
- EXPOSEキーワードがDockerfileに記載されている場合は、Dockerfile内でアプリケーションが内部で listen するポートを宣言する必要があります。 その後、 -Pパラメータでコンテナを実行する際に、コンテナ内部のポートをホスト上の高いポートにランダムにマップする必要があります。 例:docker run -P nginx はコンテナ内部で宣言されたポートをホスト上のランダムなポートにマップします。
いずれの方法を使用しても、ホストの IP アドレスと指定されたポートにアクセスすることで、コンテナ内部のアプリケーションにアクセスできます。