2016-04-25 87 views
-1

我自發地遇到了啓動我的流浪機器的問題。當試圖運行無業遊民了,我得到以下錯誤:流浪者未使用的港口碰撞 - 無法運行流浪

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 

在我vagrantfile我已經改變了這些端口隨機未使用的但仍然出現錯誤。

運行時lsof -i tcp:80沒有服務返回,同樣適用於我嘗試過的其他端口。

以前有沒有其他人有過這個問題?我開始認爲它不是端口相關的,我也嘗試重新啓動我的機器。

回答

0

看來,當你說

When running lsof -i tcp:80 no service is returned and the same applies for other ports that I have tried.

你的主機和客戶

所以之間迷茫的時候它會讀取

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

這意味着端口80從客戶虛擬機將在端口1234上的主機上重定向,無論您是否在虛擬機的80端口上運行某些內容,都會準備綁定並確保主機上的端口可用。

所以你應該確定的是,主機上的端口1234上沒有任何東西在運行(不是端口80有東西) - 如果有一個使用該端口的進程,切換到另一個端口或終止進程

+0

我遇到了和西蒙一樣的問題。 '1234'是錯誤消息中的一個隨機示例,它是關於如何更改主機端口的建議。這不是當前的主機端口。您可以在消息的前面看到主機端口,它說:「主機上轉發的端口80已在使用 」。 – Qaz

0

如果即使在端口未使用且您正在運行VMware Fusion時發生衝突,sudo edit/Library/Preferences/VMware Fusion/vmnet8/nat.conf /和delete(對我來說評論是不夠的)格式爲<external port number> = <VM's IP address>:<VM's port number>的行。例如,我刪除了80 = 192.168.12.150:80等等。保存該文件並運行vagrant up

當您重新啓動虛擬機時,您可能需要重複此過程。即使VM關閉後,Fusion似乎也會出現問題,使其在配置文件中留下舊條目。我在這裏發現它:https://github.com/mitchellh/vagrant/issues/8130