[译] Laravel 5 之美 - 2) 安装运行时必要软件和组件

Colphin 2019-06-25

原文地址: Laravel 5.1 Beauty - Required Software and Components

怎样安装开发 Laravel 5.1 必要的软件: VirtualBox 和 Vagrant

注意,这是本教程的开始。在继续下一步之前,你应该安装 VirtualBox 和 Vagrant。

本章讨论了使用 Laravel 5.1 开发应用程序需要哪些软件和组件,以及为什么需要它们。提供了安装 VirtualBox 和 Vagrant 的说明。

虚拟机的兴起

在过去的几年里,虚拟机已经进入了他们自己的世界。Virtual Machines (或者 VMs) 允许一个计算机系统(主机操作系统)模拟另外一个计算机系统。当然,VM 已经存在了一段时间了,但是现在随着处理器速度的提高和廉价的内存 VM 可以在每个开发者的桌面上进行。

Laravel 贴近了 VM 技术,并将它自己的常用 web 开发应用的组件打包为 “box”(ps:运行环境) ,并对 web 应用程序进行了最常见的需求。这种预封装的开发环境被称为 Laravel Homestead.

关于 Laravel Homestead

Laravel 的一个开发目的是让 PHP 开发既有趣又简单。为此 Laravel 提供了一个预先打包的开发环境,叫做 Laravel Homestead 。Vagrant 用于管理虚拟机。这是因为 VirtualBox 提供了主机操作系统的接口。

一辆 汽车 用以说明这一切是如何一起工作的是一个完美的比喻。Homestead 是司机的驾驶位置,Vagrant 是汽车的车架,而 VirtualBox 是引擎。一旦安装了 VagrantVirtualBox,就没有必要再管它们了。所有与 VM 的交互都使用 Homestead。(就像驾驶汽车一样,没有必要关注车架和引擎)

使用 Laravel Homestead 允许你使用虚拟的Ubuntu Linux,预先安装了 web 开发所需的软件。这个 VM 包括:

最重要的是,使用 Homestead Vagrant 可以在Windows、OS X 或 Linux 系统上使用相同的开发环境,而不用担心主机上的软件冲突。

安装 Virtual Box

Vagrant 需要一个后台服务来提供它所能管理的虚拟机。如果你已经有 VirtualBox , 或者 VMWare , 或另一个兼容的provider 你可以跳过这一步。

但是如果没有安装后台服务,可以安装 VirtualBox 软件包。它是免费的并且在每个主要平台上都能运行。

配图 2.1 - Virtualbox 下载页

[译] Laravel 5 之美 - 2) 安装运行时必要软件和组件

访问 www.virtualbox.org, 为操作系统下载包并安装

安装 Vagrant

一旦你安装了 VirtualBox (或者其他的后台服务 provider), 你需要安装 Vagrant.

配图 2.2 - Vagrant 主页

[译] Laravel 5 之美 - 2) 安装运行时必要软件和组件

烦恼歌问 www.vagrantup.com, 下载并安装你对应系统的软件包.

当 Vagrant 的安装完成后,您可能需要重新启动您的机器。重新启动后,通过打开控制台( Windows 中的命令提示符、OS X 或 Linux 中的终端)和验证版本来验证是否完成安装

检查 Vagrant 版本

% vagrant --version
Vagrant 1.6.5

Vagrant Windows 安装位置

与安装在 Windows 中的大多数软件不同,在Windows 开始菜单中,Vagrant 是找不到的。它会安装到 C:\HashiCorp 目录中,并添加 C:\HashiCorp\Vagrant\bin 到 Windows 系统变量。

我应该在哪里运行这些东西?

在接下来的几章里,安装和运行 Laravel Homestead 的一个常见问题是 “我在哪运行…?” 或者 “……跑哪儿去了?”. 这一节简要概述了 Homestead 内 Laravel 开发的主要组成部分,并回答了这些问题。

Web Server

Web服务器运行在 Homestead 虚拟机中。

Nginx 是用于服务web页面的web服务器。主机操作系统可以在地址192.168.10.10 上使用标准HTTP端口(80)来访问web页面。主机操作系统还可以在端口 8000 上访问127.0.0.1 上的 web页面。

编辑文件

永远从主机操作系统中编辑源代码。

通过共享文件夹,可以立即在 Homestead 虚拟机中使用已编辑并且保存的文件。

MySQL

MySQL 在 Homestead 虚拟机内运行。

您可以通过以下信息从主机操作系统访问MySQL。

设置项
主机127.0.0.1
端口33060
用户名homestead
密码secret

Memcached

Memcached 在 Homestead 虚拟机内运行。

Memcached 是存在于内存中的 key/value 缓存.

Beanstalkd

Beanstalkd 在 Homestead 虚拟机内运行。

Beanstalkd 是简单迅速的工作队列.

Git 或者 Subversion

运行在你的操作系统.

尽管你 可以 从任何地方运行这些版本控制系统,但是强烈建议只从你的主机操作系统运行。在一个位置运行它们避免了潜在的冲突。

例如,假设你在 Homestead 虚拟机中安装了subversion,它是 1.8 版本。你可以在 Homestead 虚拟机 中检出源代码,然后尝试从您的主机操作系统中检出它。如果你在主机操作系统上安装了 subversion v1.7,那么在主机OS上升级 subversion 之前,你将不能啥都不能干。

Bower

从 Homestead 虚拟机 或 主机系统均可.

Bower 是一个 web 上用来进行简单包管理器工具. 如果 Bower 在主机操作系统上进行了操作,那么你也可以在其他地方运行这个命令。

Gulp

从你的主机操作系统运行。

Laravel Elixir 使用 Gulp (一个个简单的构建工具) 来管理资源、最小化资源、组合资源、复制资源和进行自动化单元测试。

对于 Windows 来说,在主机操作系统上运行 Gulp 是绝对必要的。在 OS X 和 Linux 中,从主机操作系统中运行可以出现系统通知。(你仍然可以在 OS X或 Linux 的 Homestead 虚拟机中成功地运行,但在发出通知时将收到警告错误)

Composer

从你的主机操作系统运行。

如果你的主机操作系统是 OS X 或 Linux ,你可以从任何地方运行,但是如果你的主机操作系统是Windows,那么 Composer 就会创建必要的批处理文件来确保操作正确。

Artisan

从 Homestead 虚拟机运行 artisan.

其主要原因是,任何特定的数据库、队列和高速缓存驱动程序都安装在 Homestead 内,并且可能无法在主机OS上使用(或安装)。另外,本地 localhost 的数据库设置来自 Homestead 虚拟机映射,而不是来自您的主机操作系统的映射。

在控制台运行命令的规范

The rule is: Only run artisan in the Homestead VM. Everything else can or must be executed from your Host OS.

规则是: 只能在 Homestead 虚拟机中运行 artisan 。其他任何东西都可以或必须从你的主机操作系统中执行。

回顾

在本章中,我们讨论了在 Laravel 5.1 中开发应用程序所需的各种软件,并安装了 VirtualBox 和 Vagrant。

如果你的机器是一个 Windows 运行环境,那就继续下一章,设置一个 Windows 机器。否则,请跳到创建 OS X 或 Linux 机器的章节。

相关推荐