WSLとDockerの組み合わせは大変便利なのだけど, ほかのマシンから確認するときだけ面倒.
MSさんの圧倒的な力で何とかしてほしい.
まずWindowsでファイヤーウォールの設定をする
「コントロールパネル」の「システムとセキュリティ」「Windows Defender ファイアウォール」から「詳細設定」に進み「受信の規制」で80を許可した。
1. WIndowsのIPを確認する
普通に.
ipconfig
2. WSLのIPを確認する
ディストリはUbuntu使ってます.
ip a show dev eth0
3. Windowsでポートフォワーディング設定をする
他も許可したければ80ポート以外でも指定する.
netsh.exe interface portproxy add v4tov4 listenaddress=[1で確認したWindowsのIP] listenport=80 connectaddress=[2で確認したWSLのIP] connectport=80
4. 一度確認する
netsh.exe interface portproxy show v4tov4
5. つながるか確認する
ここまででつながるはず.
1のファイアウォール設定のせいで時間を無駄にした.
6. 設定を消す
きれいにしたいときには以下で消す.
netsh.exe interface portproxy delete v4tov4 listenport=80 listenaddress=[1.で確認したWindowsのIP]