【Mac】Flaskが起動しないときに確認した内容

事象

Docker&仮想サーバー完全入門 Webクリエイター&エンジニアの作業がはかどる開発環境構築ガイド
上記でDockerの学習中、Flaskのコンテナを立ち上げる際に
コンテナの立ち上げはできるが”http://localhost:5000/” にアクセスしても
繋がらない事象が発生。

〜省略〜
[+] Running 2/3
 ✔ flask_app                    Built                                                                                                      0.0s
 ✔ Network flask_default        Created                                                                                                    0.0s
 ⠋ Container flask-flask_app-1  Starting                                                                                                   0.1s
Error response from daemon: Ports are not available: exposing port TCP 0.0.0.0:5000 -> 127.0.0.1:0: listen tcp 0.0.0.0:5000: bind: address already in use

環境

端末 : MacBook Air 2025
OS : macOS Sequoia(v15.3)

解消方法(結論)

「AirPlayレシーバー」という機能が悪さをしている可能性
以下の設定を変更することによりflaskの起動を確認。

設定変更箇所

システム設定 > 一般 > AirDropとHandoff をクリック
AirPlay レシーバー がオンになっていた場合、オフにする

スクリーンショット 2025-04-13 22.20.10

確認内容

該当ポートが使用しているプロセスを確認

“lsof”で5000番ポートを使用しているプロセスを探す

hoge@fuga ~ % lsof -i :5000
COMMAND   PID USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
ControlCe 695 hoge   10u  IPv4 0x2747130f931f8daa      0t0  TCP *:commplex-main (LISTEN)
ControlCe 695 hoge  11u  IPv6 0x43d5656f20e43755      0t0  TCP *:commplex-main (LISTEN)

“ControlCe” というプロセスが動いていることを確認。
flaskではデフォルトで5000番ポートを使用するため、
これが原因で起動できていなさそう。

“kill”で該当プロセスを落としてみる

hoge@fuga ~ %  kill 22374
hoge@fuga ~ %  kill 22374
kill: kill 22374 failed: no such process
hoge@fuga ~ % lsof -i :5000
COMMAND     PID USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
ControlCe 24869 hoge   11u  IPv4  0x456221a0fc5c4c4      0t0  TCP *:commplex-main (LISTEN)
ControlCe 24869 hoge  12u  IPv6 0x7e816d2ad7cac1a0      0t0  TCP *:commplex-main (LISTEN)

該当プロセスをkillしたが再度出てきてしまった。

“ControlCe”について

調べてみたところ、AirPlayレシーバーという機能で使用しているらしい。
特に使用する予定もないので、機能をオフにする。

設定方法

システム設定 > 一般 > AirDropとHandoff をクリック
AirPlay レシーバー がオンになっていた場合、オフにする

スクリーンショット 2025-04-13 22.20.10

設定後

hoge@fuga flask % docker compose up -d
〜省略〜
 ✔ flask_app                    Built                                                                                         0.0s
 ✔ Network flask_default        Created                                                                                       0.0s
 ✔ Container flask-flask_app-1  Started
スクリーンショット 2025-04-13 23.22.32
無事に起動することを確認。

参考URL

https://amzn.to/4j7v4Kr

   https://qiita.com/hypermkt/items/905139168b0bc5c28ef2
Macでport:5000が使えないときの対処 - Qiita
基本は以下の3つのどれかの方法で解決するはず.エラー例# もうすでに該当のポートは使用されているError response from daemon: Ports are not availa…

コメント

タイトルとURLをコピーしました