1. ホーム
  2. macos

[解決済み] 8080ポートを使っているプロセスを終了させて、Vagrantを起動させるにはどうしたらいいですか?

2022-08-04 14:03:24

質問

MacOSXで、Packerを使用してVagrantボックスを構築しており、継続的に立ち上げたり下げたりする必要があります。私は 'vagrant up' を試みていますが、ポートが使用中であるため、標準エラーが表示されます。

Vagrant はこの VM に指定されたポートを転送できません。なぜなら、これらのポートですでにリッスンしている他のアプリケーションと衝突してしまうからです。8080に転送されたポートは、ホストマシンですでに使用されています"。

8080 番ポートを開いているプロセスを特定し、そのプロセスを停止すればよいのですから、解決策は簡単そうに思えますが? そう簡単ではありません。


コマンドを実行すると

nmap localhost -p 8080

次のような出力が得られます。

PORT     STATE SERVICE
8080/tcp open  http-proxy


以下のコマンドを実行すると

top -o prt

1360年に使用されていた最高峰のポート


以下のコマンドを実行すると

 netstat -tulpn | grep :8080

受け取ります。

netstat: n: unknown or uninstrumented protocol


以下のコマンドを実行すると

lsof -i :8080

何も出力されない


コンピュータを再起動すると、ポートが利用可能になり、「vagrant up」できるようになりました。

コンピュータを再起動せずに vagrant up できるように、ポート 8080 を使用しているプロセスを殺すにはどうしたらよいでしょうか。

どのように解決するのですか?

これは役立つかもしれません

lsof -n -i4TCP:8080 

PIDは出力の2番目のフィールドです。

または試してみてください。

lsof -i -P