VirtualBox 和開發環境二三事

這其實是一篇3年前的文章...

又一次團隊出游結束了,玩的挺愉快。雖然還是歡樂谷不過周五人不多,玩的項目挺多。咳咳... 收一下,回正題。
開發同學多了,首要的目標就是要統一開發平臺了,這對于新進同學快速融入團隊,了解開發規則也是有益的。關于統一團隊開發平臺在這個年代也屬于老生常談了,硬件上同學們都是MacBook Pro ,這個最對大家胃口了。 池大大的書?MacTalk 人生元編程?對于OSX的入門介紹和實用配置已經深入人心,在多看里看了2遍。軟件上其他團隊使用 Vagent 的比較多 ,雖然我們沒有使用Vagent 不過開源的Virtualbox是必須的。在這個日新月異的時代了做一些決定似乎有些難不過對于統一開發平臺就簡單多了,首先從項目線來入手,團隊目前項目多以電商項目為主,其中以基于ECstore 和 ECshop 的開發為主。ECstore 2.0 的開發者版本中涉及系統關鍵業務的文件是使用zend基于 php 5.3 加密的。ECshop 等開源軟件在這方面沒有需要考慮的。那么現在基本明了了,
LNMP
開發運行環境大方向上就是LNMP了。
操作系統使用Centos 6.3或6.4 64位。
web Nginx last
Php ?php 5.3.28
MySQL ?5.5.28
其他一些php擴展包括 apc, memcached, redis
關于LNMP的編譯安裝 一鍵安裝包比較多 在此不累述。
IDE
在IDE的選擇上大家主要使用兩種工具 zend studio 和 phpstorm 不過使用方式都一樣均配置SFTP或者FTP連接開發虛擬機,MAC本地編輯文件,保存后自動時時更新至開發虛擬機,關于phpstorm ftp 配置官方有視頻解說,可能版本比較老了不過操作差不多, 我在使用這兩個IDE時發現使用SFTP連接開發虛擬機只能使用ssh默認22端口,如果更改其他端口會報莫名其妙的java錯誤,或是可以連接不過不顯示遠程目錄。搜遍google 也沒有找到原因,這樣Virtualbox就無法使用NAT模式配置端口轉發,這給后面Virtualbox的配置上加大了難度??。

VirtualBox
主要說明下mac 作為物理機和CentOS虛擬機間的訪問和聯通配置。

大家都知道VirtualBox 有4種網絡鏈接方式

1、NAT ? ?網絡地址轉換模式(NAT,Network Address Translation)
2、Bridged Adapter ? ?橋接模式
3、Internal ? ?內部網絡模式
4、Host-only Adapter ?主機模式
具體詳細解釋

但是遇到了一些問題:
1.在沒有網絡的情況下使用橋接模式就無法進行開發和調試,虛擬機也不能上網。
2.如果使用NAT模式,雖然虛擬機可以上網但是在不設置端口轉發的情況下 物理機又無法ssh 登陸虛擬機。
3.使用Host-only 模式的話 物理機可以直接ssh 虛擬機對應ip 來登陸虛擬機,可是這樣虛擬機無法上網。
上面3種配置都無法滿足一些極端情況比如斷網。仔細看了下VirtualBox 里關于虛擬機網絡的配置發現有4個網卡,那么啟用兩塊網卡,一塊配置NAT模式 另外一塊配置Host-only 這樣兩種模式來互補的話就可以解決一些極端情況 比較完美的解決上面的問題了,想到就做,測試下來果然可以。至此比較完美的統一開發環境搭建方案就是這樣了。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。