dockerでnginxを起動しようと思ったら、80番ポートがすでに使われていて起動できなかった


  • まずは80ポートを何が掴んでいるのか確かめる
$ sudo lsof -i :80 

これで,80ポートを占領しているものが見れる↓

どうやら80番ポートがnginxに大量に掴まれている様子

  • killしてみる
$ kill (PID)

が、

私の環境ではなぜか無限に出てくる...

  • 効率よく消すにはこれがいい
$ kill $(lsof -t -i:80)

これで$sudo lsof -i :80で出てきた一覧にある15個ほどのポートは消せる。
ただ、私の場合は消してもまた同じ量の80番ポートが掴まれていた
何度消しても何度も出てくる...

なので

これ↓でnginx全てを落とす

$ sudo nginx -s stop

これでようやく全て消えたので、dockerでnginxを立ち上げてみると起動できた

理由がさっぱりわかりませんがひとまず全てのportを消せたので、備忘録として残します