日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

vagrant 环境配置

發布時間:2023/12/4 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 vagrant 环境配置 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

vagrant是簡便虛擬機操作的一個軟件,而使用虛擬機有幾個好處:

1、為了開發環境與生產環境一致(很多開發環境為windows而生產環境為linux),不至于出現在開發環境正常而移步到正式生產環境時出現各種問題,而vagrant通過共享文件,可以實現在主機(windows)下的IDE編寫代碼操作,直接在虛擬機(linux)中運行展示出效果。

2、在vagrant中只需要搭配一次開發環境,然后就可以將搭配好的環境系統鏡像打包發送給其他的同事用了,其他同事只需要下載vagrant和virtualBox,然后配置下共享目錄后就可以開發了,再也不需要關心配置環境的問題了。

3、目前好多擴展如swoole、redis等對linux支持更好,甚至有些只支持linux,所以采用虛擬機,再也不需要為學習新技術找借口了。

相關環境機軟件版本:主機:win7;虛擬機:VirtualBox-5.0.10-104061-Win.exe;vagrant:vagrant_1.8.6.msi;virtualBox:centos-6.6-x86_64.box(win7版本不要輕易升級,很可能不兼容,上述版本已測試可用!)

一、安裝步驟如下:

1、下載virtualBox,地址點這里,安裝

2、下載vagrant,地址點這里,安裝

3、下載鏡像,有幾個地方可以下載:http://www.vagrantbox.es/和https://atlas.hashicorp.com/boxes/search都可以

4、將下載的鏡像加載,順便說下,第3步可以不用,vagrant支持在線安裝鏡像,但由于長城的原因,所以最好通過其它方法將鏡像下載下來,再在本地加載,,打開cmd,輸入以下命令:

命令是這樣的,title為自己起的名字,url為box地址,可以在線也可以本地

vagrant box add {title} {url}

實際安裝命令,本地下載下來的

vagrant box add CentOs6.5_64 D:\Soft\Work\virtual_box\centos-6.6-x86_64.box
5、找一個/新建一個目錄,例如D:\file\vagrant\redis,然后初始化環境

復制代碼

新建目錄

mkdir redis

打開此目錄

cd redis

初始化,CentOs6.5_64為你上方設置的title

vagrant init CentOs6.5_64
復制代碼
PS:vagrant box地址需要和上述軟件安裝在同一盤符里。
初始化成功后,本目錄下會出現Vagrantfile這樣一個文件,這個是vagrant的配置文件,后續的配置在這里修改

6、先都使用默認的配置,來啟動下:
進入vagrantfile所在目錄,如:D:\file\vagrant\redis
vagrant up
會顯示一系列啟動信息:

復制代碼
==> default: Clearing any previously set forwarded ports…
==> default: Clearing any previously set network interfaces…
==> default: Preparing network interfaces based on configuration…
default: Adapter 1: nat
default: Adapter 2: hostonly
==> default: Forwarding ports…
default: 22 (guest) => 2222 (host) (adapter 1)
==> default: Running ‘pre-boot’ VM customizations…
==> default: Booting VM…
==> default: Waiting for machine to boot. This may take a few minutes…
default: SSH address: 127.0.0.1:2222//注意這里
default: SSH username: vagrant//這里
default: SSH auth method: private key
…….
復制代碼
如果不報錯的話就算是啟動成功了,如果出現錯誤則谷歌或百度,我這邊主要遇到的錯誤為無限卡在 default: SSH auth method: private key這個地方,很大可能的原因是本機沒有開啟虛擬化技術,重啟電腦,按f2或其它的鍵進入bios設置,找到virtual相關字樣的開啟即可。

7、遠程連接linux,此時windows下可以用putty或者是xshell來連接,host地址如上方標識的注意: 127.0.0.1:2222,用戶名密碼都為:vagrant

此時,默認的共享文件夾的對于關系是windows下的vagrant_project文件夾對應linux下的/vagrant文件夾,可以隨便在雙方建立幾個文件測試下是否兩方是同步的

8、關閉等命令,由于還有好多需要配置,暫時可以關閉,等配置完成后再啟動

關閉

vagrant halt

重啟

vagrant reload
二、網絡配置、共享目錄等相關配置

以上僅僅是展示了安裝和開啟的簡單用法,但真正能用于開發還需要額外的配置,打開上方提到的Vagrantfile配置文件來進行配置,好多都是已注釋掉的,選擇去掉即可

1、網絡配置,vagrant有三種配置方法:官網文檔點這里查看

  a、端口映射,意思是將虛擬機的端口映射到主機的端口上,主機局域網內可以通過訪問這個端口來訪問到你虛擬機上的東西

config.vm.forwarded_port 80, 8080
  上述作用是將虛擬機的80端口映射到主機的8080端口上,那我直接訪問主機的8080端口就相當于訪問虛擬機的80端口

  b、私有網絡,只有主機才能訪問虛擬機,主句局域網內成員不能訪問的虛擬機的內容

config.vm.network “private_network”, ip: “192.168.33.10”
  上述設置完成后,在本機可以通過192.168.33.10來訪問虛擬機,需要注意192.168.33.10雖然可以隨便設定,但如果主機的ip為192.168.1.xxx字段,那就不要這個再用這個區段,可以2.xxx或3.xxx或其它,以免造成沖突。

  c、共有網絡,主機局域網內成員可以訪問虛擬機中的內容,虛擬機相當于局域網內的一員

config.vm.network “public_network”, ip: “192.168.1.120”
  以上配置一般來說開發環境也不需要局域網內成員訪問,所以大部分情況下是選擇用b、私有網絡來開發,這個可根據實際情況來選擇。

2、共享目錄,用戶可以自定義共享目錄,在Vagrantfile配置文件中配置:

禁用原有的默認的共享目錄

config.vm.synced_folder ‘.’, ‘/vagrant’, disabled: true

增加新的共享目錄,第二個參數以當前文件夾為基準

config.vm.synced_folder “abc”, “/www/web/abc”,
上方相當與windows下的vagrant_project/abc文件夾對應linux下的/www/web/abc文件夾

除了可以自定義共享文件外,還可以選擇共享的方式,vagrant有四種共享的方式,官網文檔請點這里查看

  a、NFS共享方式,windows平臺無法使用此配置,且用此方式時不能修改文件的所有者和所有組

  b、RSync共享方式,所有平臺都可以使用,但這種方式貌似有個缺點就是主機的改動可以同步到虛擬機中,但虛擬機中的改動無法同步到主機中,如果要實現雙向同步可能還需做其它設置,由于沒有用過,所以不太清楚。

  c、SMB共享方式,只有windows平臺可以使用,曾有找一些資料來配置,但一直沒有成功,所以具體的并不太清楚,但貌似效率是挺不錯的。

  d、VirtualBox共享方式,這是VirtualBox提供的也是vagrant默認的共享方式。當文件數量小時用著不錯,當文件數量大的時候打開網頁會卡到超時。

總之以上,如果主機是mac,則推薦用NFS共享方式,如果是windows則推薦用smb或者rsync方式,如果文件很少,那用默認的就可以了。

但除了上方說的,windows下其實還有方式可以加快網站訪問速度,那就是用Vagrant WinNFSd這款插件,插件地址點這里,這種方式是windows下提高速度最簡單的方式了:

vagrant plugin install vagrant-winnfsd
安裝完成后配置type為nfs,雖然官網上說nfs不能應用于windows,但用這個插件后就可以了。

config.vm.synced_folder “abc”, “/www/web/abc”,type:”nfs”
測試了下,此插件還是非常有效的,原先打開yii2框架的文件會超時,或10、20多秒,但用了這個后響應在2s以內,還是可以接受的。另提供一個參考資料:讓Vagrant在Windwos下支持使用NFS/SMB共享文件夾從而解決目錄共享IO緩慢的問題

三、域名訪問及打包分發

1、域名訪問,主要是虛擬的本地域名配置問題

這里還是安裝了lanmp_v3.1,具體的安裝方法可以看以前的文章:Linux下安裝LANMP環境或者去下載官網上去找安裝說明

新建一個站點,指定目錄到共享的目錄,隨便取個虛擬的域名:www.abc.com

測試需要在主機中修改host,如下:(至于虛擬機中/etc/hosts文件中,測試修改與不修改都不影響訪問)

192.168.33.10 www.abc.com
192.168.33.10 abc.com
然后直接在瀏覽器中用http://www.abc.com既可顯示虛擬機中的內容了。而直接在windows中的的IDE修改文件,會實時通過這個網址展示出來。

2、打包分發

vagrant package
等待一段時間,會發現在目錄生成一個package.box的文件,這個就是已經包含安裝環境的鏡像了,將此鏡像發給同事,讓其安裝上方所屬的步驟加載鏡像vagrant box add {title} {url}命令,然后配置自己的網絡及共享文件夾就可以直接開發了,遠離重新配置環境的煩惱。

以上就是vagrant常用的一些操作,挺不錯的,試試吧!

總結

以上是生活随笔為你收集整理的vagrant 环境配置的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。