流浪汉未使用的端口冲突 - 无法运行流浪汉

问题描述 投票:-1回答:2
Vagrant cannot forward the specified ports on this VM, since they
would collide with some other application that is already listening
on these ports. The forwarded port to 80 is already in use
on the host machine.

To fix this, modify your current project's Vagrantfile to use another
port. Example, where '1234' would be replaced by a unique host port:

  config.vm.network :forwarded_port, guest: 80, host: 1234
vagrant vagrantfile
2个回答
0
投票

看来,当你说

运行lsof -i tcp:80时,不会返回任何服务,这同样适用于我尝试过的其他端口。

你在主人和客人之间感到困惑

所以当它读

config.vm.network :forwarded_port, guest: 80, host: 1234

这意味着来宾VM的端口80将在端口1234上的主机上重定向,无论您是否在VM上的80端口上运行某些东西,它都会准备绑定并确保主机上的端口可用。

所以你应该确保在主机上的端口1234上没有运行任何东西(不是端口80有什么东西) - 如果有一个使用该端口的进程,切换到另一个端口或终止进程


0
投票

如果即使端口未使用并且您正在运行VMware Fusion,你也会遇到冲突,sudo edit / Library / Preferences / VMware Fusion / vmnet8 / nat.conf /并删除(评论对我来说还不够)格式<external port number> = <VM's IP address>:<VM's port number>。例如,我删除了80 = 192.168.12.150:80和许多其他人。保存文件并运行vagrant up

重新启动VM时,可能需要重复此过程。 Fusion似乎存在问题,即使在VM关闭后也会在配置文件中留下旧条目。我在这里发现了它:https://github.com/mitchellh/vagrant/issues/8130

© www.soinside.com 2019 - 2024. All rights reserved.