1. 程式人生 > >Laravel Homestead的安裝和使用(解決踩坑篇)

Laravel Homestead的安裝和使用(解決踩坑篇)

Homestead是什麼

Laravel Homestead 是一個官方預封裝的 Vagrant box,它為你提供了一個完美的開發環境,而無需在本地機器安裝 PHP 、Web 伺服器和其他伺服器軟體。不用擔心會搞亂你的作業系統!Vagrant boxes 是一次性的。如果出現問題,你可以在幾分鐘內銷燬並建立 Box!
Homestead 可以執行在任何 Windows,Mac,或 Linux 系統,它包括了 Nginx web 伺服器, PHP 7.2,PHP 7.1,PHP 7.0,PHP 5.6, MySQL,PostgreSQL,Redis,Memcached, Node,以及開發 Laravel 應用程式所需要的東西。
Vagrant是構建在 虛擬化技術之上 的 虛擬機器執行環境管理工具

安裝

安裝vagrant和 VirtualBox、git版本控制器、composer

Git、Virtualbox和Vagrant 安裝此處就省略了,把檔案下載下來,就一直下一步就好,vagrant安裝完成會提示重啟電腦,重啟就好。composer安裝略微複雜一些,之後會在別的部落格補充,好,準備條件已經準備好了,下班我們開始進入正題吧,安裝Homestead

安裝Homestead

我的Vagrant 安裝目錄選擇在 D:/vagrant
1.開啟Git Bash 進入D: /Vagrant

cd D:
cd Vagrant

2.1 新增Homestead Vagrant Box 到 Vagrant (無本地box檔案)

vagrant box add laravel/homestead

1.如果報錯請使用vagrant2.0以上版本,就去官網下載最新版本就好
2.這一步會下載特別慢,你可以使用下載好的BOX檔案,在上班百度雲盤中有,可以下載
3.如果vagrant 命令未找到,需重啟git bash 或重啟電腦 (你之前安裝過vagrant)

2.2 homestead Vagrant Box 到 Vagrant (有本地box檔案,本地檔案位置在D:/vagrant/homestead-virtualbox-0.6.0.box)

vagrant box add laravel/homestead homestead-virtualbox-0.6
.0.box

2.3 檢視是否新增成功

vagrant box list

返回內容如下說明新增成功

mingming@DESKTOP-BIJMDOV MINGW64 /d/Vagrant
$ vagrant box list
laravel/homestead (virtualbox, 6.1.0)

3.克隆 Laravel Homestead 倉庫到 D:/vagrant/homestead

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

4.#執行 init.sh(生成Homestead.yaml檔案)

bash init.sh

5.建立本地工作目錄

cd ..

所以專案,存放在這個vagrant目錄下,一會我們會這個這個目錄為homestead的共享檔案目錄
6.安裝 laravel

composer create-project laravel/laravel laravel --prefer-dist "5.4*"

7.配置祕鑰

cd ~/.ssh
ls

檢視是否存在id_rsa和id_rsa.pub連個檔案,如果有就不用,再生產,如果沒有執行如下命令

ssh-keygen -t rsa -C "[email protected]

本檔案地址在你clone的位置,有好多部落格會寫在C盤下,不一定,可根據自己需求自己定義位置,git clone https://github.com/laravel/homestead.git這條命令覺得Homestead.yaml檔案位置

ip: "192.168.10.10"
memory: 2048
cpus: 1
provider: virtualbox
authorize: ~/.ssh/id_rsa.pub
keys:
    - ~/.ssh/id_rsa
folders:
    - map: ~/Code
      to: /home/vagrant/Code
sites:
    - map: homestead.app
      to: /home/vagrant/Code/Laravel/public
databases:
    - homestead
variables:
    - key: APP_ENV
      value: local

修改為

ip: "192.168.10.10"
memory: 2048
cpus: 1
provider: virtualbox

authorize: ~/.ssh/id_rsa.pub

keys:
    - ~/.ssh/id_rsa
folders:
    - map: D:/Vagrant
      to: /home/vagrant

sites:
    - map: api.homestead.com
      to: /home/vagrant/code/laravel/public

databases:
    - homestead

1.正常情況下,我們配置Vagrantfile,我們配置homestead是因為作者給我們配置好了,我們只需要填充引數即可
2.ip: 虛擬機器的ip地址,如果window下,本地電腦也是192.168.10.* ip段,這個時候,再填寫192.168.10.10就會報錯,解決方案:192.168.11.10即可解決
3.authorize、keys分別代表私鑰和公鑰,如果使用homestead必須配置祕鑰,公鑰
4.folders:共享檔案目錄,map代表window環境,to:同步homestead檔案位置
5.sites:NGINX配置檔案,map代表域名,to:指向目錄域名指向檔案位置

8.配置windows hosts 檔案
開啟 C:/Windows/System32/drivers/etc/host 新增

192.168.10.10   api.homestead.com

9.啟動虛擬機器

cd d:/homestead
vagrant up

補充操作

  1. 進入虛擬機器
vagrant ssh 

2.登入mysql 密碼為secret (檢視mysql版本是否為自己想要的)

mysql -u homestead -p

3.檢視php版本、nginx版本

php -v
nginx -v

補充內容(vagrant常用命令)

命令 解釋
vagrant box list 檢視目前已有的box
vagrant box add 新增加一個box
vagrant box remove 刪除指定box
vagrant init 初始化配置vagrantfile
vagrant up 啟動虛擬機器
vagrant ssh ssh登入虛擬機器
vagrant suspend 掛起虛擬機器
vagrant reload 重啟虛擬機器
vagrant halt 關閉虛擬機器
vagrant status 檢視虛擬機器狀態
vagrant destroy 刪除虛擬機器

相關推薦

no