Vagrant up 報錯?不妨更換版本試試

loodeer發表於2018-02-06

今天花了大半天時間在環境安裝上面,晚上夜深人靜,腦子裡回憶了一下經過,整理文字如下。由於都是事後回憶,一些細節性的東西沒有具體記錄。


事情是這樣的,這幾天剛接觸 laraval,跟著2.4. 開發環境搭建 - MacOS文件安裝開發環境。

由於本人公司也是用的 Vagrant + VirtualBox 方式,我本地已經安裝有 Vagrant 和 VirtualBox,不過版本比較老。

已經安裝的 Vagrant 版本是 1.8.x 的,VirtalBox 是 4.x 的。(具體x是多少,沒特意關注。)

由於 Homestead 的 Vagrantfile 裡面要求了

Vagrant.require_version '>= 1.9.0'

不過,我的第一反應竟然是 把 >= 1.9.0 改成 >= 1.8.0。 然後事情就悲劇了,雖然 vargant up 最後是成功了(有丟擲一個異常,具體想不起來了。。。),卻能 vagrant ssh 進去,但是主機卻 ping 不同虛擬機器 ip ,自然也就訪問不了 http://homestead.app 。查了好多資料,最終結論是 vagrant 版本不對。

更新一下 vagrant 版本到 2.0.2 ,最後問題解決。


這時候,我又腦抽地萌生一個想法,vagrant 升級了,乾脆把本地的 VirtualBox 也升級到最新吧。

說幹就幹,官網下載了最新 5.2 版本的 VirtualBox 。然後 vagrant up 公司的專案,結果又悲劇了, 報了一個 ssh 相關的錯誤,啟動失敗。

然後查了兩個多小時,並沒有解決問題。

最終,替換成 1.9.8 的 Vagrant 和 5.1.32 的 VirtualBox ,僅僅是更換了版本,其他啥也沒改,再去 vagrant up ,竟然奇蹟般的啟動成功了,並且沒有任何問題。

總結

本文並沒有什麼營養,更多的只是為了記錄一下。沒有真正查明問題的根本原因,可能在讀者看來也根本沒有把問題描述清楚。

但是,我想表達的一個觀點就是,遇到 vagrant 問題,在時間不允許的情況下,換一個軟體版本,不妨也可以作為一種思路。

本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章