更多文章,歡迎大家關(guān)注的我的個(gè)人博客網(wǎng)站:fangd123
此文首發(fā)于個(gè)人博客:Vagrant打造跨平臺零配置Web開發(fā)環(huán)境問題和解決方案匯總
我使用的Vagrant配置鏡像:
https://github.com/scotch-io/...
對應(yīng)的box文件鏈接:
https://drive.scotch.io/scotc...
vagrant本地加載box:vagrant box add ... ...
vituralbox 4.3.12版本鏈接:
http://download.virtualbox.or...
win10 hostonly問題補(bǔ)丁鏈接:
https://www.virtualbox.org/at...
實(shí)驗(yàn)室有一臺win10主機(jī),自用MBP,平時(shí)本來不怎么做web開發(fā)的(我的研究方向和這個(gè)關(guān)系不大),但上課科目中有一門要用到web開發(fā),為了盡可能不對當(dāng)前的桌面環(huán)境配置產(chǎn)生影響,同時(shí)能夠正常完成老師布置的作業(yè),于是嘗試使用vagrant。
還有一點(diǎn),我想在Win、OSX平臺下獲得一致的開發(fā)體驗(yàn),不需要我在每個(gè)平臺都重新配置一遍,這個(gè)剛好vagrant也可以滿足。
Windows 10下安裝VagrantVagrant需要本機(jī)上裝有Virtualbox和Git,不過Vagrant安裝包里邊自帶了這兩個(gè)軟件,我本以為這樣直接就可以了,沒想到,這里有一個(gè)坑。
Virtualbox兼容性問題Virtualbox for win存在版本兼容性問題,試了很多次虛擬機(jī)都啟動不起來,各種出錯,谷歌之,說版本降級可解決,經(jīng)過一番比較,Virtualbox 4.3.12版無兼容性問題,下載鏈接見文首。
hostonly問題配置Vagrant的時(shí)候,為了讓虛擬機(jī)能夠和宿主機(jī)通信,一般采用的是hostonly的網(wǎng)絡(luò)設(shè)置,但是這樣配置之后,虛擬機(jī)啟動失敗,錯誤提示:
VBoxManage.exe: error: Failed to create the host-only adapter
谷歌之,在官方論壇上找到了對應(yīng)問題的ticket,這個(gè)問題可能依舊是Win10不兼容導(dǎo)致的,不過幸運(yùn)的是有補(bǔ)丁,打上補(bǔ)丁就搞定了,鏈接在這里:
https://www.virtualbox.org/at...
下次在開啟虛擬機(jī)之前,首先以管理員模式打開這個(gè)補(bǔ)丁就行了。
OSX 10.11下安裝Vagrant一切正常,并未發(fā)生問題。
Vagrant的box鏡像選擇 要求畢竟web開發(fā),box鏡像中,PHP、Node、Mysql等等必備的東西一個(gè)都不能少,最好是都配置完好的,能夠直接使用
方案一?基于puppet腳本的Vagrant配置鏡像使用puppet,就可以讓系統(tǒng)自己安裝預(yù)先設(shè)定好的軟件,想來也是不錯的,在Github上搜尋到了一個(gè)star比較多的項(xiàng)目
https://github.com/dirkaholic...
按照上邊的步驟操作,出現(xiàn)的錯誤,我谷歌之亦未尋得答案,只好作罷。
看到錯誤提示,應(yīng)該是puppet腳本出現(xiàn)問題了,返回了錯誤的值,又想到我的Ubuntu雙系統(tǒng)中apt-get update語句執(zhí)行之后便是漫長地等待,覺得使用puppet安裝這些軟件可能不是一個(gè)適合我的選擇
方案二?PuPHPet這其實(shí)也是一個(gè)基于puppet的一個(gè)vagrant配置鏡像,原理和方案一差不多,不同之處在于方案二擁有一個(gè)GUI界面來配置每一個(gè)細(xì)節(jié),給了用戶更多的定制性,當(dāng)然,對于剛剛接觸web開發(fā)的同學(xué)或者僅僅需要最基本功能的同學(xué)來說,這倒成了一種負(fù)擔(dān)。
方案三??基于已配置好的打包box的Vagrant配置鏡像Github上另外一個(gè)項(xiàng)目引起了我的注意:
https://github.com/scotch-io/...
根據(jù)首頁上的介紹,不需要聯(lián)網(wǎng)配置,不使用puppet這類運(yùn)維工具配置,即裝即用,幾乎完全滿足了我的需求。
按照步驟配置下來,終于在折騰了一下午之后成功啟動虛擬機(jī)
剩下的按照首頁上的介紹直接使用就好了,這里不再多述。
Vagrant鏡像安裝技巧:box鏡像文件快速下載box鏡像文件動輒五六百M(fèi)B,如果用Vagrant默認(rèn)的下載方式,真的不知道下到啥時(shí)候,這里介紹一個(gè)『快一點(diǎn)』的下載方式:
首先按照正常步驟,輸入vagrant up之后會有一句指示當(dāng)前下載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
此時(shí)我們ctrl+c強(qiáng)制停止當(dāng)前進(jìn)程,將url拷貝到迅雷或者別的下載工具中進(jìn)行下載,下載完成后進(jìn)入下載目錄,打開命令行,輸入(其中hashicorp/precise32為配置文件為box鏡像起的名字)
vagrant box add hashicorp/precise32
Vagrant會自動對box鏡像進(jìn)行處理,此時(shí)我們再回到之前的Vagrant配置目錄中,vagrant up啟動,過不了一會兒就安裝好了。
額外配置:修改默認(rèn)的public同步文件夾至其他文件夾打開Vagrantfile,找到
config.vm.synced_folder ".", "/var/www", :mount_options => ["dmode=777", "fmode=666"]
修改"."為自己的目錄,然后vagrant up開啟虛擬機(jī),進(jìn)入ect/apache2目錄,配置vituralhost的directory,從public改為自定目錄即可
總結(jié)puppet一件利器,但是還是需要看使用場景,至少在我這個(gè)場景下我覺得直接全部打包更方便快捷。
在國內(nèi)的網(wǎng)絡(luò)環(huán)境,能夠離線安裝就離線安裝,在線的方式費(fèi)時(shí)費(fèi)力還不一定成功
下次有時(shí)間再試試Docker,看看有沒有這么多坑。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/21243.html
摘要:序言下打造一個(gè)可移動性跨平臺的開發(fā)環(huán)境。下載完成之后點(diǎn)擊安裝就可以了。如果是在下,又安裝了,則運(yùn)行,均可。最后注意,每次修改文件之后你都應(yīng)該執(zhí)行使之生效。 序言 windows下打造一個(gè)可移動性、跨平臺的開發(fā)環(huán)境。媽媽再也不用擔(dān)心本地代碼放到線上出現(xiàn)各種問題啦! 安裝 vagrant(1.9.5) virtualBox(5.1.22) windows下vagrant需要下載msi后...
摘要:我下載到了本機(jī)上與打通的文件夾中,再進(jìn)入,執(zhí)行以下命令用代號取代的發(fā)行版本代號,本系統(tǒng)是所以代號為通過執(zhí)行,在文件尾部中添加,以下代碼保存,相關(guān)編輯操作請谷歌。安裝的前提是,已經(jīng)安裝成功。 最近因?yàn)楣ぷ鏖_始接觸Yii,之前開發(fā)使用laravel習(xí)慣用vagrant。所以,這次嘗試著打造一個(gè)box,專門用來寫Yii框架的項(xiàng)目。 在這次打造box,收獲了很多:1)更加熟悉了nginx的配...
摘要:事實(shí)上,這種快捷的發(fā)布周期需要配合一系列流程工具甚至是管理文化,從而共同支撐起一套安全且可靠的云原生應(yīng)用程序運(yùn)作機(jī)制。云原生框架云原生應(yīng)用程序的一大關(guān)鍵性特質(zhì)在于,其需要遵循一套設(shè)計(jì)契約以較大程度實(shí)現(xiàn)行為的可預(yù)測性。 擺脫臨時(shí)性自動化方案之定位,發(fā)揮優(yōu)勢以實(shí)現(xiàn)可預(yù)測功能。您能否以每周為單位向客戶發(fā)布各類新功能?甚至進(jìn)一步達(dá)到以每天乃至每小時(shí)為單位?新晉開發(fā)人員能否在上班的第一天即進(jìn)行代碼部署...
閱讀 2826·2021-11-15 11:37
閱讀 2974·2021-09-23 11:21
閱讀 3086·2021-09-07 10:11
閱讀 3249·2019-08-30 15:53
閱讀 2907·2019-08-29 15:13
閱讀 1674·2019-08-26 13:57
閱讀 1180·2019-08-26 12:23
閱讀 2516·2019-08-26 11:51