Vagrant搭建可移动的PHP开发环境
準備
開發所需工具:
Vagrant
Oneinstack
Virtualbox
Vagrant box
系統環境:macOS Sierra 10.12.5
搭建系統:CentOS 7
搭建環境:Oneinstack(PHP以及Java環境)
為啥不用docker?因為很多公司用的windows,然而windows 10才能正常支持,在wineows下安裝一大堆東西不行,折騰了好些下,決定不躺著個坑。
安裝
首先需要先安裝Virtualbox、Vagrant,按照官方文檔選擇對應操作系統安裝即可。
檢查是否安裝完成
? ~ vagrant -v Vagrant 1.9.8準備就緒,走起!!!
走起
? morgan cd path #cd 到你要操作的目錄 ? path mkdir vagrant #創建目錄 ? vagrant cd vagrant #進入目錄選擇boxs,打開Vagrant box,在box列表選擇CentOS 7 x64 (Minimal, Shrinked, Guest Additions 4.3.26) (Monthly updates)根據你的需要選擇對應的系統,復制對應URL。
? vagrant vagrant init centos/7 #在Vagrant box 中的名字,然后等待 ? vagrant vagrant up #啟動 ? vagrant vagrant ssh #進入ssh [vagrant@localhost ~]$ cd /home/ #進入你準備用來下載oneinstack的目錄,然后根據官方安裝教程完成環境安裝到這里PHP環境安裝完畢,問題來了,如何訪問呢?端口映射。
打開所在目錄Vagrant生成的Vagrantfile查找被注釋的forwarded_port,其實該配置文件寫的很詳細,可以根據說明完成大部分配置。復制,粘貼之注釋下方,端口號根據系統環境以及個人需求更改,然后保存。
退出ssh,然后重啟。
[vagrant@localhost root]$ exit; #退出ssh ? vagrant vagrant reload #重啟訪問127.0.0.1:8989OK,展示出歡迎service歡迎頁面。
訪問的問題解決了,那么該如何編輯代碼呢?同步文件夾解決這個問題。為了更快的同步到box里面,Mac可以使用NFSWindows可以使用SMB方式。以Mac為例,配置不同的是type參數。打開Vagrantfile,查找synced_folder復制到下方,查找private_network復制到下方,修改對應目錄,保存。
重啟服務
? vagrant vagrant up到這里,環境的配置完成了!
其他修改
加注釋的為其他修改
Vagrant.configure("2") do |config|config.vm.hostname = "morgan" #修改主機名,ssh登陸后的左側提示config.vm.box = "centos/7"config.vm.network "forwarded_port", guest: 80, host: 8989 config.vm.network "private_network", ip: "192.168.33.10"config.vm.synced_folder "/Users/morgan/Desktop/www/", "/data/wwwroot/default/", type: "nfs"config.vm.provider "virtualbox" do |vb|vb.name = "morgan-centos" #虛擬機名vb.memory = "1024" #內存大小vb.cpus = 2 #CPU數量end end在開發測試的時候,發現要刷新幾次才能夠顯示新的頁面,查看文檔發現是Nginx 的sendfile 導致的。修改配置。
#In Nginx: sendfile off;#In Apache: EnableSendfile Off打包
? vagrant vagrant package name參考文檔:
Vagrant docs
總結
以上是生活随笔為你收集整理的Vagrant搭建可移动的PHP开发环境的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 甲骨文宣布供应链管理云平台支持LogFi
- 下一篇: PHP会话控制考察点