Masayan tech blog.

  1. ブログ記事一覧>
  2. 【OS別】特定のポートを使用しているプロセスを調べてkillする手順

【OS別】特定のポートを使用しているプロセスを調べてkillする手順

公開日

前置き

すでに使用しているポートでDockerコンテナやローカルサーバーを起動しようとすると、ポートが重複して起動できない旨のエラーが出ることがたまにあります。(忘れたころに)

ERROR: for コンテナ名 ~: Ports are not available: listen tcp 0.0.0.0:80: bind: address already in use

対応策

portからPIDを確認してプロセスをkillするとエラーを解消できますが、そのためのコマンドをいつも忘れて調べての繰り返しなので、macOsとWin両方でまとめておきます。

OS

手順

win

コマンドプロンプトを管理者モードで起動し、

  • 対象のport番号に対応するPIDを確認する
    netstat -aon | find "<killしたいport>"
  • PIDを指定してプロセスをkillする
    taskkill /pid <killしたい PID>

linux/mac

-iで待機ポートでかつ、

  • 指定したportを使用しているプロセスを確認
    lsof -i:<killしたいport>
  • PIDを指定してプロセスをkillする
    kill -9 PID

まとめ

いかがでしたでしょうか。本記事では、OS別で特定のポートを使用しているプロセスを調べてkillする手順について紹介しています。ご利用のPCにdockerを使用して複数のアプリケーションコンテナを起動している場合に便利なコマンドになりますので、ぜひ参考にしてみてください。