1. 程式人生 > 程式設計 >laravel開發環境homestead搭建過程詳解

laravel開發環境homestead搭建過程詳解

常見的幾種開發環境

Laravel的開發環境其實很多,因為它本身就是PHP,所以只要滿足版本的情況下,任何pHP環境他都能跑起來,比如說常見的wamp/mamp/phpstudy等整合化環境都是可以的,但是,為了更好的減少錯誤,更多的相容,以後的上線環境,官方推薦了兩種開發環境,一種是homestead,另一種是Valet。第1種呢,Windows系統和mac系統,都可以支援,第2種的專門就是為mac系統的使用者所提供的,總體感覺兩種環境都非常非常好用,今天我們就著重說一下第1種環境的搭建。

homestead環境for windows

Laravel 致力於讓整個 PHP 開發體驗變的更愉快,包括你的本地開發環境。 Vagrant 提供了一種簡單、優雅的方式來管理和配置虛擬主機。

Laravel Homestead 是一個官方預封裝的 Vagrant box ,它為你提供了一個完美的開發環境,你不需要在本地機器安裝 PHP、web 伺服器和其他的伺服器軟體。你再也不用擔心會弄亂你的作業系統了!Vagrant boxes 是一次性的。 如果出現問題, 你可以在幾分鐘內銷燬並重新建立 box !

Homestead 可以執行在任何 Windows、Mac、或 Linux 系統, 它包括了 Nginx web 伺服器,PHP7.4、PHP 7.3、PHP 7.2、PHP 7.1、MySQL、PostgreSQL、Redis、Memcached、Node 以及你開發 Laravel 所需要的東西。

1. 安裝git

下載地址:這裡附上2.25.1版本下載

git for windows 32位

git for windows 64位

laravel開發環境homestead搭建過程詳解

也可到官方網站下載最新版: git官方

安裝好進行備用。

2.安裝虛擬機器管理軟體

在你啟動 Homestead 環境之前,你必須安裝 VirtualBox 6.x,VMWare,Parallels 或 Hyper-V 以及 Vagrant。以上所有軟體均針對不同的作業系統提供了易於使用的視覺化安裝包。

laravel開發環境homestead搭建過程詳解

我這裡使用的是VirtualBox軟體, https://www.virtualbox.org/wiki/Downloads 是 Oracle 公司的開源虛擬機器軟體。VirtualBox 號稱是最強的免費虛擬機器軟體,它不僅功能齊全,而且效能也很優異!VirtualBox 支援大部分流行的系統,如:Mac,Windows,Linux 等。

下載地址: 下載地址

選擇window hosts即可下載,大小位100多MB,安裝完畢備用。

3. 安裝Vagrant(管理虛擬機器的工具)

Vagrant by HashiCorp Vagrant 是用來管理虛擬機器的工具,支援當前主流的虛擬機器系統如 VirtualBox、VMware、AWS 等。Vagrant 的主要作用是提供一個可配置、可移植和複用的軟體環境。Vagrant 讓你通過編寫一個 Vagrantfile 檔案來控制虛擬機器的啟動、虛擬機器網路環境的配置、虛擬機器與主機間的檔案共享,以及啟動後自動執行一些配置指令碼,如自動執行一個 Shell Script 來安裝一些必備的開發工具,如安裝配置MySQL、PHP,甚至是自動配置 Nginx 站點。這意味著,在一個多人開發的專案中,你只需要同步 Vagrantfile 檔案,就可以保證參與專案的每個人各自的機器上擁有一致的開發環境。

laravel開發環境homestead搭建過程詳解

下載地址: 下載地址

大小200多MB

4.安裝Homestead box 第一種--線上安裝 Homestead Vagrant Box(不推薦)

這樣安裝下載會非常慢,我安裝了好多次都失敗了,可以使用第二種本地檔案安裝方式

vagrant box add laravel/homestead

先開啟git,然後開啟~目錄

然後執行上述命令

然後提示你選擇paralles還是virtualbox

laravel開發環境homestead搭建過程詳解

選擇2,然後就會進行線上安裝

第二種--本地檔案安裝(推薦使用)

先下載離線 homestead.box,大小1.25GB左右,這裡附上下載地址:官方下載,官方頁面homestead,官方頁面,然後執行如下命令

下載地址:下載地址

官方網址: 官方網址

下載完成後放到本地目錄,這裡我放到g盤homestead目錄下。

然後在git中執行命令:

vagrant box add laravel/homestead g:/homestead.box

注意更改路徑。

等待安裝完畢,顯示如上圖則已安裝成功。

5. 安裝 Homestead 管理指令碼

首先clone管理指令碼

git clone https://github.com/laravel/homestead.git ~/Homestead
cd ~/Homestead

laravel開發環境homestead搭建過程詳解

建立 Homestead.yaml 配置檔案

./init.bat

如果是本地安裝的 homestead.box 版本為0,所以需要修改下面步驟生成的配置檔案 /Users/xxxx/Homestead/scripts/homestead.rb 以下內容

config.vm.box_version = settings["version"] ''= ">= 0"

laravel開發環境homestead搭建過程詳解

6.配置同步資料夾

在~/Homestead目錄下Homestead.yaml檔案進行配置

folders:
 - map: ~/code/code1
  to: /home/vagrant/code1

 - map: ~/code/code2
  to: /home/vagrant/code2

這裡就是把本地的檔案同步到虛擬機器,這樣就能把原始碼放到本地,然後執行虛擬機器就能看到效果,非常的方便。

注意:

這裡有誤區,有的人會直接配置如下:

folders:
 - map: ~/code
  to: /home/vagrant

這樣是無法同步成功的。

不能直接同步到vagrant裡,要同步到vagrant的子目錄中。

7.配置SSH 祕鑰登入

用於實現 SSH 免密碼登入 修改 Homestead.yaml 檔案以下內容:

keys:
 - ~/.ssh/id_rsa
 - ~/.ssh/id_rsa.pub

生成 key

使用命令

ssh-keygen -t rsa -C "[email protected]"
#後面一真按enter鍵,設定密碼

8.連線資料庫

homestead 預設已經在虛擬機器中為 MySQL 和 PostgreSQL 資料庫做好了配置。要從主機的資料庫客戶端連線到 MySQL 或 PostgreSQL ,應該連線到 127.0.0.1 ,埠 33060 (MySQL) 或 54320 (PostgreSQL)。使用者名稱和密碼分別是 homestead / secret 。

注意:只有從本地連線 Homestead 的資料庫時才能使用這些非標準的埠。而 Laravel 在虛擬機器中 執行時還是應該使用預設的 3306 和 5432 埠進行資料庫連線。

##9.配置臨時站點(域名)

一旦你的 Homestead 環境已配置並執行,你可以為你的 Laravel 應用新增額外的 Nginx 站點。你可能希望在單個 Homestead 環境執行多個 Laravel 安裝。要新增額外的站點,到 Homestead.yaml 檔案中新增站點:

sites:
 - map: homestead.test
  to: /home/vagrant/code1/public
 - map: homestead2.test
  to: /home/vagrant/code2/public

這時候,還需要你把本機的hosts檔案新增如下兩條

192.168.10.10 homestead.test
192.168.10.10 homestead2.test

10.配置全域性命令

Git for Windows環境中使用

如果我們想在任何目錄都可以執行 vagrant 命令,需要進行以下設定 修改 ~/.bash_profile 檔案內容,這種設定只在 git for windows 軟體中使用

function homestead() {
 ( cd ~/Homestead && vagrant $* )
}

這樣我們就可以使用 homestead up 等方式執行了。

11.常用命令

以下這些都是常用命令,如果已經配置全域性,命令,可以不進入homestead資料夾內操作,所有命令vagrant換成homestead即可。

啟動

cd ~/Homestead && vagrant up

改動配置,過載配置

vagrant reload --provision

關閉

vagrant halt

通過 SSH 登入 vagrant(需要先啟動 vagrant)

vagrant ssh

檢視目前安裝的box列表

vagrant box list

刪除box映象

vagrant box remove laravel/homestead

刪除指定版本

vagrant box remove laravel/homestead --box-version 6.4.0

檢視當前 Homestead 虛擬機器的狀態。

vagrant status

完成以上操作,基本滿足開發需求,更多內容,請前往官網自行探求。

到此這篇關於laravel開發環境homestead搭建詳解的文章就介紹到這了,更多相關laravel開發環境搭建內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!