原文地址: Laravel 5 Beauty – Setting up an OS X or Linux Machine
让你的 OS X 或者 Linux 机器做好开发 Laravel 5.1 的准备
注意 这是本教程的第二步(针对 OS X/Linux 用户)。请在继续之前安装以下列出的所有内容。
本章介绍了安装和安装 OS X / Linux 机器上 Laravel Homestead 的支持软件所需要的步骤。假设VirtualBox 和 Vagrant 已经从上一章中安装了。
Linux 的细微变化
不同的 Linux 发行版之间有细微的差别。特别是包管理器。CentOS 和 Fedora 使用 yum 作为包管理器,Ubuntu 使用 apt。除了App Store以外,没有官方的“包管理器”,但 homebrew 是非官方的OS X包管理器。不管区别是什么,在所有的 *nix 系统中,包括OS X的本质都是一样的。
Step 1 – 安装 PHP
通常,PHP 预装在你的系统中。您可以从 终端 查看版本。
检查 PHP 版本
~> php --version
PHP 5.5.9-1ubuntu4.5 (cli) (built: Oct 29 2014 11:59:10)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies
with Zend OPcache v7.0.3, Copyright (c) 1999-2014, by Zend Technologies
Laravel 5.1 要求PHP版本是 5.5.9 或更高版本。如果你没有安装 PHP,或者版本小于 5.5.9,那么你需要使用包管理器来安装PHP。
OS X Yosemite
Yosemite (当前撰写时候的最新版本) 集成 PHP 5.5.14 . 所以不用担心.
在 Ubuntu 安装 PHP 的示例
~> sudo apt-get install php5
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
php5
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
[snip]
Step 2 – 安装 Node.js
你需要 Node.js , 因为我们要使用 gulp.
通常情况下,Node.js 已经安装。您可以检查 npm 的版本,来查看系统是否安装了 Node.js。
检查 npm 版本
$> npm --version
1.5.0-alpha-4
如果没有安装,安装它有几个方式。您可以使用你的包管理器来安装它。有了OS X,你可以用自制的程序来安装它。或者你可以去nodejs.org/download下载并安装操作系统支持的版本。
Figure 4.1 – Node.js 下载页面
安装完毕后,一定要检查版本,确保 node 和 npm 在终端可用
检查 node 和 npm 版本
~> node --version
v0.10.29
~> npm --version
1.5.0-alpha-4
Step 3 – 安装 Gulp
Gulp 是快速 Laravel 开发的一个不可或缺的部分。使用 NPM 在全局上安装 gulp。
全局安装 gulp
~> npm install -g gulp
/usr/local/bin/gulp -> /usr/local/lib/node_modules/gulp/bin/gulp.js
gulp@3.8.10 /usr/local/lib/node_modules/gulp
[snip]
检查 gulp 版本
~> gulp --version
[10:13:44] CLI version 3.8.10
安装可选的 Bower
如果希望从 Linux (或 OS X )终端运行 bower ,您可以选择全局安装 bower。就我个人而言,我从 OS X 终端和 Homestead VM 中使用 bower,无论我当前在哪个平台。
You can optionally install bower globally if you wish to run bower from your Linux (or OS X) console. Personally, I use bower both from my OS X console and within the Homestead Virtual Machine, whichever I’m currently in.
使用 NPM 全局安装 bower。
全局安装 bower
~> npm install -g bower
/usr/local/bin/bower -> /usr/local/lib/node_modules/bower/bin/bower
bower@1.3.12 /usr/local/lib/node_modules/bower
[snip]
检查 bower 版本
~> bower --version
1.3.12
记住这只是全局安装了应用程序
如果您在一个特定的项目中使用了 gulp (或 bower ),那么您需要在该项目中使用 npm install
(忽略 -g
选项)在本地安装它们。稍后将讨论这个问题。
Step 4 – 安装 Composer
Composer 是 一个 PHP 包管理工具. 它可以很轻松地从 *nix 系统(包括 OS X 和 Linux)的终端安装。在这一节的底部,介绍了使用 Homebrew 在 OS X 中安装 Composer 的另一种方法。
安装 Composer
~> curl -sS https://getcomposer.org/installer | php
#!/usr/bin/env php
All settings correct for using Composer
Downloading...
Composer successfully installed to: /Users/chuck/composer.phar
Use it: php composer.phar
一旦下载了 composer.phar
移动到全局路径中.
移动 composer.phar
~> sudo mv composer.phar /usr/local/bin/composer
检查版本确保是否可用
检查 Composer 版本
~> composer --version
Composer version 1.0-dev (b23a3cd36870ff0eefc161a4638d9fcf49d998ba)\
2014-11-21 17:59:11
安装并使用 Homebrew
在 OS X 中,如果你正在使用 homebrew ,你可以使用下面的说明来安装 composer .
在 OS X 中使用 Homebrew 的另一种安装方法.
~> brew update
~> brew tap homebrew/dupes
~> brew tap homebrew/php
~> brew install composer
Step 5 – 添加 SSH Keys
如果还没有为你的机器添加 SSH 密钥,那么你需要搞一下
检查 SSH 密钥
~> ls ~/.ssh
config id_rsa id_rsa.pub
如果没有看到 id_rsa
和 id_rsa.pub
, 用以下的命令创建它们。(按下[Enter]键,使用默认设置,并设置 SSH 密钥,不需要传递短语。)
创建 SSH Keys
~> ssh-keygen -t rsa -C "your@email.com"
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/Chuck/.ssh/id_rsa):
Created directory '/Users/Chuck/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Step 6 – 添加 Homestead
这一步下载 Laravel Homestead Vagrant。
在 Linux 中添加 Homestead
~> vagrant box add laravel/homestead
==> box: Loading metadata for box 'laravel/homestead'
box: URL: https://vagrantcloud.com/laravel/homstead
[snip]
网速慢的情况下下载需要一段时间.
Step 7 – 安装 Homestead
现在我们将使用 composer 来安装 homestead
, homestead 命令行实用程序可以很简单地控制 Homestead Virtual Machine。
Step 7.1 – 全局安装 Homestead
全局安装 Homestead 2.0
~> composer global require "laravel/homestead=~2.0"
Changed current directory to /home/chuck/.composer
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
- Installing symfony/process (v2.5.7)
Loading from cache
- Installing symfony/console (v2.5.7)
Loading from cache
- Installing laravel/homestead (v2.0.7)
Loading from cache
Writing lock file
Generating autoload files
Step 7.2 – 更新 Path
Composer 刚刚安装了 Homestead 到 vendor
目录中. (例如linux 中 /home/chuck/.composer
, 或者 OS X 中的 /Users/Chuck/.composer
)。
为了从任何命令提示符中都能够访问 homestead ,将此路径添加到您的 path 变量中。这应该添加到您的操作系统的启动脚本中。常见的启动文件有 : .bashrc
, .bash_profile
, .zshrc
在您的启动脚本的底部添加以下一行:
更新启动脚本的路径
export PATH="~/.composer/vendor/bin:vendor/bin:$PATH"
有没有注意到额外的 ‘vendor/bin’ 路径?
我们添加了这个目录是因为大部分时候你都在一个 Laravel 项目的根目录中,你就可以轻松访问该项目中提供的任何 vendor 工具。例如,Phpunit 安装在每个 Laravel 项目的 vendor/bin
目录中。
Step 7.3 – 验证 Homestead 安装
关闭所有已经打开的终端并打开一个新的终端窗口,这样对路径的最新更改将会生效。然后检查 homestead 的版本来验证它是否安装了。
检查 Homestead 版本
~>homestead --version
Laravel Homestead version 2.0.7
Step 7.4 – 初始化 Homestead
一旦你安装了 homestead 命令并将 composer bin 目录添加到你的路径,那么您需要初始化 Homestead
初始化 Homestead
~> homestead init
Creating Homestead.yaml file...
Homestead.yaml file created at: /home/chuck/.homestead/Homestead.yaml
注意
Homestead 仅仅需要初始化 一次
Step 8 – 启动 Homestead VM
为了第一次打开 Homestead ,我们将创建一个 Code
目录来存储我们的项目,并使用 homestead up
命令。
首次启动 Homestead
~> mkdir Code
~> homestead up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Importing base box 'laravel/homestead'...
==> default: Matching MAC address for NAT networking...
==> default Checking if box 'laravel/homestead' is up to date...
[snip]
现在,Homestead 虚拟机正在运行。如果你退出终端,VM 仍在运行。它将保持活动状态直到你从终端发送一个 homestead halt
命令。
现在你可以通过 homestead ssh
命令来登录到 homestead 中
homestead 中 shell 的使用
~> homestead ssh
Welcome to Ubuntu 14.04.1 LTS (GNU/Linux 3.13.0-11-generic x86_64)
* Documentation: https://help.ubuntu.com/
System information as of Fri Nov 28 04:24:01 UTC 2014
System load: 0.0 Processes: 92
Usage of /: 5.2% of 39.34GB Users logged in: 0
Memory usage: 33% IP address for eth0: 10.0.2.15
Swap usage: 0% IP address for eth1: 192.168.10.10
Graph this data and manage this system at:
https://landscape.canonical.com/
Get cloud support with Ubuntu Advantage Cloud Guest:
http://www.ubuntu.com/business/services/cloud
Last login: Fri Nov 28 04:24:01 2014 from 10.0.2.2
vagrant@homestead:~$
Step 9 – 安装 Laravel 安装程序
下面我们安装 Laravel 安装程序, 从你的主机终端打开控制台(不是在 Homestead VM 中))
全局安装 Laravel 安装程序
~> composer global require "laravel/installer=~1.1"
Changed current directory to /Users/chuck/.composer
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
- Installing guzzlehttp/streams (2.1.0)
Downloading: 100%
- Installing guzzlehttp/guzzle (4.2.3)
Downloading: 100%
- Installing laravel/installer (v1.1.3)
Downloading: 100%
Writing lock file
Generating autoload files
由于 path 已经在步骤 7.2 中更新,已经包含 composer 的 bin 目录,所以可以从控制台窗口可以访问 laravel
命令。通过检查版本来验证它。
检查 Laravel 版本
~> laravel --version
Laravel Installer version 1.2.1
恭喜!
现在您有了一个虚拟的 Ubuntu 64位机器,准备好开发您的 Laravel 5.1 web应用程序吧。
回顾
本章包含了一系列的步骤从而使你的 OS X或 Linux 机器上运行 Laravel Homestead 。好消息是,这些步骤只需要执行一次。
下一章,使用 Homestead,包含了使用 Homestead 的信息