1. 程式人生 > >Laravel homestead 安裝與使用 From Scratch

Laravel homestead 安裝與使用 From Scratch

前記

在開始接觸 homestead 之前一直想著這貨有什麼卵用,本地安裝個 XAMPP 直接開始碼。後來為了保護系統的清潔性(-_-|||),避免開發環境汙染到物理環境:

  • 所以開始考慮到虛擬機器,接著在 VMware 上搭了個 Linux,用著一段時間:這尼瑪每次都要開個 GUI 出來啟動虛擬機器好麻煩;
  • 於是開始考慮 Vagrant,Vagrant 是基於 VBox、VMware 等用於快速建立生產環境的工具,基於命令列的管理方式。此時並沒有想著直接用 homestead 而是自己連滾帶爬建一個 box (Vagrant 中的 box 相當於一個完整封裝的虛擬機器,homestead 就是一個 box),簡單地搭建了一個開發環境,但是感覺不夠全面,於是棄坑,但是至少了解了 Vagrant 的一些工作機制;
  • 最後回憶起有 homestead 這東西,Rock!

基礎

Vagrant 基本原理就是通過配置檔案,在後臺啟動一個預配置好的虛擬機器(生產環境),通過埠對映,我們可以連線物理機並自動轉發到虛擬機器上進行通訊。

環境準備

這裡的版本號僅供參考,筆者使用的系統為 Win10。

預配置

Vagrant 的環境變數 VAGRANT_HOME 用於指定當前下載 box 的存放位置,所以該資料夾會佔用較大的空間,你可以將其指定到對應的路徑。

安裝 homestead

安裝完 Vagrant 後其會自動新增到環境變數,使用 vagrant 命令新增 laravel/homestead 環境:

vagrant box add laravel/homestead

接著會顯示下載源路徑和進度資訊,由於貴國牆高,建議複製下載源路徑扔到某下載工具下載,之後切換到 box 檔案的當前目錄,使用如下方式新增本地 box:

vagrant box add laravel/homestead 這裡_替換為_box_檔名稱

這裡寫圖片描述

配置 homestead

Laravel 官方為我們提供了 Vagrantfile 等開發環境初始化配置檔案,省得手動配置,首先使用 git 把這些配置檔案拉下來:

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

然後切換到該目錄,執行初始化命令(注意這裡要使用 Cygwin):

./init.sh

這裡寫圖片描述

看看這個檔案幹了什麼:

這裡寫圖片描述

其實就是複製一些配置模板檔案到 ~/.homestead 檔案下,接著進入 ~/.homestead,修改 homestead 的配置檔案:

這裡寫圖片描述

其實這配置檔案很容易理解,挑幾個重要的講,其餘預設即可:

  • [ip] 物理機的 IP 地址,用於本地埠繫結

  • [authorize] 你的 SSH 連線公鑰(如何生成 SSH 金鑰請 參考這裡

  • [keys] SSH 私鑰

  • [folders] 把你的本地檔案對映到虛擬機器(例如上圖將 ~/Sources/Web 對映到虛擬機器的 /home/vagrant/sources),這樣可以物理機和虛擬機器同步訪問檔案。

  • [sites] Nginx 配置中的網站根目錄, map 為你的域名(如果自定義了域名,要新增到 hosts 檔案),to 為網站根目錄

  • [databases] 建立一個名為 homestead 的 MySQL 資料庫

注意:Vagrant 啟動時會替換 box 預設的 SSH 私鑰,而 homestead 的配置檔案也會將我們配置的 SSH 金鑰進行替換。

預設 Vagrant 替換的 SSH 私鑰會導致連線失敗(至少我是這樣),所以我們直接讓 homestead 替我們工作即可,需要達成該目的你需要修改 homestead 配置目錄下名為 Vagrantfile 的檔案,新增一句

config.ssh.insert_key = false

這裡寫圖片描述

啟動 homestead

如此簡單便配置完了,接下來在 homestead 目錄下啟動 homestead:

vagrant up

啟動完成後,埠會被對映到本地,通過訪問物理機的 8000 埠可以重定向到虛擬機器的 80 埠,2222 重定向到虛擬機器的 22 埠。

然後你可以隨時關閉虛擬機器:

vagrant halt

或者把環境廢了(放心你重新 up 會自動生成一個新環境,而且對映的檔案在本地,如果沒有在虛擬機器上儲存附加資訊,不會造成損失)

vagrant destory

注意:如果你是 win10,並且用著相同版本號的程式,應該會遇到 VBox 網路介面卡而導致 homestead 無法啟動的問題,開啟 homestead/scripts/homestead.rb 檔案,並將對應語句註釋即可:

這裡寫圖片描述

其實每次都要到 homestead 目錄去進行啟動有點不爽,筆者偷懶寫了一個批處理,將批處理儲存為 homestead.bat ,並把該批處理目錄新增到 PATH 變數即可隨處執行:

@echo off
set CWD=%cd%
rem 下面替換為你的 homestead 路徑
set HOMESTEAD_HOME=C:\homestead

if exist %HOMESTEAD_HOME% (
    rem Redirect to the drive which is specified
    %HOMESTEAD_HOME:~0,2%
    chdir %HOMESTEAD_HOME%

    if "%1"=="up" ( goto up )
    if "%1"=="halt" ( goto halt )
    if "%1"=="status" ( goto status )
) else (
    echo The directory %HOMESTEAD_HOME% dosen't exist.
)
goto nothing

:up
vagrant up
goto nothing

:halt
vagrant halt
goto nothing

:status
vagrant status

:nothing
%CWD:~0,2%
chdir %CWD%

例如,啟動 homestead:

homestead up

這裡寫圖片描述

關機:

homestead halt

檢視狀態

homestead status

題外話:使用 SSH 連線到 homestead

可以使用 Putty 或者 Xshell 連線到物理機的 2222 埠對 homestead 進行操作,使用者名稱為 vagrant:

這裡寫圖片描述

相關推薦

Laravel homestead 安裝使用 From Scratch

前記 在開始接觸 homestead 之前一直想著這貨有什麼卵用,本地安裝個 XAMPP 直接開始碼。後來為了保護系統的清潔性(-_-|||),避免開發環境汙染到物理環境: 所以開始考慮到虛擬機器,接著在 VMware 上搭了個 Linux,用著一段時間:

Laravel Homestead安裝教程(V6.4)

注意:所有命令在Git Bash下執行CMD要出錯!!!   1、首先安裝必需的軟體: Git、VirtualBox、Vagrant、Composer 2、配置環境變數: 如下圖所示 3、下載box https://app.vagrantup.com/

Laravel Homestead 安裝中遇到的問題

There are errors in the configuration of this machine. Please fixthe following errors and try again:vm:* The host path of the shared folder is missing: ~/C

win7安裝laravel homestead

.bat bsp parallel 虛擬 org lar win alt 配置 1.安裝 Virtual Box 5.1、VMWare或 Parallels 以及 Vagrant(我選的virtualBox) 2.將vagrant.exe添加到系統變量,並在終端執行vagr

Laravel Homestead 離線安裝

mce target tool version you hub laravel box too 一、寫在之前,網絡不夠快想要安裝Homestead,也是一個浩大的工程,對於下載一個 1.22G左右的 laravel/homestead box 也是非常的麻煩。那麽如何才能離

windows 安裝laravel homestead後,卡在SSH auth method: private key

windows 安裝laravel homestead後,卡在SSH auth method: private key 檢查BIOS 是否開啟,是否能支援VirtualBox工作; Bringing machine ‘default’ up with ‘virtualbox’ pro

Laravel 5.5 的安裝配置

安裝伺服器要求Laravel 5.5 框架對PHP版本和擴充套件有一定要求:PHP >= 7.0.0PHP OpenSSL 擴充套件PHP PDO 擴充套件PHP Mbstring 擴充套件PHP Tokenizer 擴充套件PHP XML 擴充套件滿足以上需求之後,就

[Laravel 5.2]一、安裝環境配置

1.安裝wamp //注意版本限制 其中PHP在5.5以上 laravel 需要用到其中特性 2 安裝composer 3安裝larvel 4設定apache  1)在E:\wamp\bin\apache\apache2.4.9\conf\extra\httpd-

win10 下 Laravel 虛擬開發環境 Homestead 安裝教程

一、使用Homestead的理由         1、Homestead 是一個官方預封裝的 Vagrant Box,內建 Ubuntu 16.04、Git、PHP 7.1、Nginx、MySQL、Composer、Redis、Memcached等一系列軟體,無需在本地安裝

laravel 安裝資料庫修改

先下載對應版本的laravel檔案,我這裡是5.2版本的,php.exe檔案的目錄什麼的放到系統屬性path裡。安裝一個composer(暫時沒用到) 修改檔案config/database.php裡的資料庫對應的地址、使用者名稱、密碼 還有.env中的對應

Laravel學習日記1:安裝初識

前話: 一直使用ThinkPHP框架,最近計劃由tp3升級到tp5,結果發現tp5相關的文件都是收費的,準備棄之,換用Laravel。 工作的環境都是Linux,因此只討論Linux下的操作,不涉及windows相關。 相對於TP而

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

Homestead是什麼 Laravel Homestead 是一個官方預封裝的 Vagrant box,它為你提供了一個完美的開發環境,而無需在本地機器安裝 PHP 、Web 伺服器和其他伺服器軟體。不用擔心會搞亂你的作業系統!Vagrant boxes 是

Nginx安裝使用

表示 cli 3.1 replace 需要 網站 pop emp 文字 Nginx安裝與使用 Nginx是一款輕量級的Web 服務器/反向代理服務器及電子郵件(IMAP/POP3)代理服務器,並在一個BSD-like 協議下發行。由俄羅斯的程序設計師Igor Sysoev所

3.1 Java以及Lucene的安裝配置

clas font style edi 面向對象 上進 net ref ips Lucene是Java開發的一套用於全文檢索和搜索的開源程序庫,它面向對象多層封裝,提供了一個低耦合、與平臺無關的、可進行二次開發的全文檢索引擎架構,是這幾年最受歡迎的信息檢索程序庫[1]。對L

Linux下svn的安裝部署

myeclipse span .com 服務 點擊 svn服務器 。。 hook idt     最近工作碰到一個問題,我和一個同夥負責開發一個管理系統,基於原來的代碼上進行修改,每當他修改之後,我要再修改都要和他確定是不是最新的文件,才能進行修改。非常影響工作的效率,所以

Tomcat、mysql在Linux上的安裝配置

jre -s mkdir acl .html pat etc rac pac 1.下載JDK與Tomcat. jdk下載地址: http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downlo

nrm是什麽?以及nrm的安裝命令

color tar targe 原本 如果 align ima strong -a nrm的作用與安裝使用 一、nrm是什麽? 這是官方的原話:   開發的npm registry 管理工具 nrm, 能夠查看和切換當前使用的registry, 最近NPM經常 down 掉

【Redis】2、CentOS 7 上安裝 redis3.2.3安裝配置

sync 倉庫 ace /var/ 發現 wan sudo base str 一、redis源碼安裝 【更正】現在最新穩定的版本已經到了3.2.8 截至到2016.8.11,redis最新穩定版本為3.2.3.本篇文章我們就以此版本為基礎,進行相關的講解。 下載redis源

linux應用之vim的安裝配置(centos)

utf8 power scroll pbo gb2312 nco pla red vma 1.vim的安裝 #yum search vim //查看vim相關軟件信息 #yum install -y vim* //在線安裝vim 2.vim的配置 (1)~/.vimi

ubuntu下nvm,node以及npm的安裝使用

詳細 manage tag 不知道 https desc .org 原因 使用方法 一:安裝nvm 首先下載nvm。這裏我們須要使用git,假設沒有安裝git,能夠使用 sudo apt-get install git來安裝 git clone https://g