更多文章,歡迎你們關注的個人我的博客網站:fangd123php
此文首發於我的博客:Vagrant打造跨平臺零配置Web開發環境問題和解決方案彙總git
我使用的Vagrant配置鏡像:
https://github.com/scotch-io/...github
對應的box文件連接:
https://drive.scotch.io/scotc...web
vagrant本地加載box:vagrant box add ... ...
sql
vituralbox 4.3.12版本連接:
http://download.virtualbox.or...apache
win10 hostonly問題補丁連接:
https://www.virtualbox.org/at...bash
實驗室有一臺win10主機,自用MBP,平時原本不怎麼作web開發的(個人研究方向和這個關係不大),但上課科目中有一門要用到web開發,爲了儘量不對當前的桌面環境配置產生影響,同時可以正常完成老師佈置的做業,因而嘗試使用vagrant。網絡
還有一點,我想在Win、OSX平臺下得到一致的開發體驗,不須要我在每一個平臺都從新配置一遍,這個恰好vagrant也能夠知足。運維
Vagrant須要本機上裝有Virtualbox和Git,不過Vagrant安裝包裏邊自帶了這兩個軟件,我本覺得這樣直接就能夠了,沒想到,這裏有一個坑。ide
Virtualbox for win存在版本兼容性問題,試了不少次虛擬機都啓動不起來,各類出錯,谷歌之,說版本降級可解決,通過一番比較,Virtualbox 4.3.12版無兼容性問題,下載連接見文首。
配置Vagrant的時候,爲了讓虛擬機可以和宿主機通訊,通常採用的是hostonly的網絡設置,可是這樣配置以後,虛擬機啓動失敗,錯誤提示:
VBoxManage.exe: error: Failed to create the host-only adapter
谷歌之,在官方論壇上找到了對應問題的ticket,這個問題可能依舊是Win10不兼容致使的,不過幸運的是有補丁,打上補丁就搞定了,連接在這裏:
https://www.virtualbox.org/at...
下次在開啓虛擬機以前,首先以管理員模式打開這個補丁就好了。
OSX 10.11下安裝Vagrant一切正常,並未發生問題。
畢竟web開發,box鏡像中,PHP、Node、Mysql等等必備的東西一個都不能少,最好是都配置無缺的,可以直接使用
使用puppet,就可讓系統本身安裝預先設定好的軟件,想來也是不錯的,在Github上搜尋到了一個star比較多的項目
https://github.com/dirkaholic...
按照上邊的步驟操做,出現的錯誤,我谷歌之亦未尋得答案,只好做罷。
看到錯誤提示,應該是puppet腳本出現問題了,返回了錯誤的值,又想到個人Ubuntu雙系統中apt-get update
語句執行以後即是漫長地等待,以爲使用puppet安裝這些軟件可能不是一個適合個人選擇
這其實也是一個基於puppet的一個vagrant配置鏡像,原理和方案一差很少,不一樣之處在於方案二擁有一個GUI界面來配置每個細節,給了用戶更多的定製性,固然,對於剛剛接觸web開發的同窗或者僅僅須要最基本功能的同窗來講,這倒成了一種負擔。
Github上另一個項目引發了個人注意:
https://github.com/scotch-io/...
根據首頁上的介紹,不須要聯網配置,不使用puppet這類運維工具配置,即裝即用,幾乎徹底知足了個人需求。
按照步驟配置下來,終於在折騰了一下午以後成功啓動虛擬機
剩下的按照首頁上的介紹直接使用就行了,這裏再也不多述。
box鏡像文件動輒五六百MB,若是用Vagrant默認的下載方式,真的不知道下到啥時候,這裏介紹一個『快一點』的下載方式:
首先按照正常步驟,輸入vagrant up
以後會有一句指示當前下載box文件的url,例如
==> default: Adding box 'hashicorp/precise32' (v1.0.0) for provider: virtualbox default: Downloading: https://atlas.hashicorp.com/hashicorp/boxes/precise32/versions/1.0.0/providers/virtualbox.box
此時咱們ctrl+c
強制中止當前進程,將url拷貝到迅雷或者別的下載工具中進行下載,下載完成後進入下載目錄,打開命令行,輸入(其中hashicorp/precise32
爲配置文件爲box鏡像起的名字)
vagrant box add hashicorp/precise32
vagrant up
啓動,過不了一下子就安裝好了。打開Vagrantfile,找到
config.vm.synced_folder ".", "/var/www", :mount_options => ["dmode=777", "fmode=666"]
修改"."
爲本身的目錄,而後vagrant up
開啓虛擬機,進入ect/apache2
目錄,配置vituralhost的directory,從public
改成自定目錄便可