概要
dockerでローカルサーバーを立ち上げたときに、スマートフォンでの検証をする場合などがある。その際に、スマートフォンに対してhttp://localhost:8000
などとアクセスしてもつながらないことがあった。ファイアウォールの設定が関係しており、外部機器でのつなぎ方の設定を記載する。
使用端末
- win10
方法
- 設定
- 「セキュリティが強化されたWindows Defender ファイアフォール」を開く。
- 左の項目から「受信の規則」を選択
- Docker Desktop Backend(プロファイル パブリック)を探す
- 許可されていないとなっている場合があるため、右クリックでプロパティを開き、許可するを選択して、適用
- また, パブリック以外になっていたら、パブリックにする
- 2つあると思うので二つとも許可とパプリックに設定する(UDP, TCP)
- 再起動(念のため)
- 実際に接続してみる
- 外部機器(スマホなど)とパソコンを同じWi-Fiにつなぐ。
- dockerにてローカルサーバーを立ち上げる。
-
$ ipconfig
でデフォルトゲートウェイが開いているipv4の値を見る。 - スマホで
http://(ipv4の値):(ポート番号)
でアクセス可能
最後に
今回はDockerで構築したローカルサーバーのアクセス方法を示したが、npm
など他のツールでローカルサーバを立ち上げた時は、そのツールに対して同じ設定をする必要がある。(npmだと受信の規則一覧にnodeっぽい名前の設定項目があるはず)