環境
- macOS Sonoma 14.4.1
この問題に至った経緯
Laravel学習用にsail環境を構築するため、Dockerをインストール
→sailコマンドを実行したところ80番ポートが使用されている旨のエラー発生...
結論
以下のコマンドで80番ポートが解放された!
ターミナル
sudo apachectl stop
調べた内容
ググってみると大体が「killコマンド」で解決するという記事でしたが、自分の場合は効果なし。
試した内容が以下になります。
ターミナル
sudo lsof -i:80
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
httpd 59967 root 4u IPv6 0x2517fa95a8b5fd1b 0t0 TCP *:http (LISTEN)
httpd 59984 _www 4u IPv6 0x2517fa95a8b5fd1b 0t0 TCP *:http (LISTEN)
killコマンドを実行すると、、、
ターミナル
sudo kill 59967
異なるPID(プロセスID)でまたポートが占有されてしまう。
ターミナル
sudo lsof -i:80
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
httpd 60355 root 4u IPv6 0x2517fa95a8b60d1b 0t0 TCP *:http (LISTEN)
httpd 60360 _www 4u IPv6 0x2517fa95a8b60d1b 0t0 TCP *:http (LISTEN)
httpdが占有しているため、apacheが原因と推測。
以下のコマンドで成功!
ターミナル
sudo apachectl stop
無事sailが実行できました。
ターミナル
./vendor/bin/sail up -d
[+] Running 6/6
✔ Container sample-app-meilisearch-1 Running 0.0s
✔ Container sample-app-mailpit-1 Running 0.0s
✔ Container sample-app-mysql-1 Running 0.0s
✔ Container sample-app-redis-1 Running 0.0s
✔ Container sample-app-selenium-1 Running 0.0s
✔ Container sample-app-laravel.test-1 Started
おわりに
以前XAMPPでも同様にポートの競合が起こったため、そのときはいろいろ調べて1日費やしてしまいました。
今回は早めに解決できてよかったです。