2.2. 创建应用

做好准备

由于我们接下来的开发都会在 Homestead 上进行,因此,在开始本章教程之前,请保证你的 Homestead 虚拟机已成功开启并登录。使用下面命令来启动和登录 Homestead:

> cd ~/Homestead && vagrant up
> vagrant ssh

在虚拟机中进入 Code 文件夹:

$ cd ~/Code

注意:本书中因为虚拟机的存在,我们会有两个运行命令行的环境,一个是主机,另一个是 Homestead 虚拟机。我们会在命令的前面使用『命令行提示符』来区分主机和 Homestead。请记住以 > 开头的命令是运行在主机里,$ 开头的命令是运行在 Homestead 虚拟机里。详见 写作约定 - 命令行提示符

Composer 加速

在创建项目之前,我们先在虚拟机中运行以下命令来实现 Composer 安装加速

$ composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/

创建 LaraZhihu 应用

下面让我们来使用 Composer 创建一个名为 larazhihu 的应用,后面我们将基于这个应用做更多的功能完善:

$ cd ~/Code
$ composer create-project laravel/laravel larazhihu --prefer-dist "8.*"

中间省略掉安装细节,安装成功后你会看到如下界面:

创建应用

修改 hosts

每个 Laravel 项目创建完成后的第一步,即是对 Homestead 进行配置,让应用能在 Homestead 的开发环境上跑起来。

为了方便记忆,一般我们都会将 IP 映射为域名,我们能够通过设置 hosts 文件来指定 IP 与域名之间的映射关系,由于我们在 Homestead 上默认使用 192.168.10.10 来作为虚拟机的 IP 的地址,因此我们需要在系统的 hosts 文件中将域名指向该 IP 上。

Mac 下 Hosts 文件地址:

 /etc/hosts

Windows 下打开 Hosts 文件地址:

 C:/Windows/System32/Drivers/etc/hosts

打开文件,在 hosts 文件最后面新增下面一行以完成设置:

192.168.10.10   zhihu.test

新增站点

如果你安装了 Sublime Text,可通过运行下面命令打开 Homestead.yaml 文件:

> subl ~/Homestead/Homestead.yaml

Homestead.yaml 文件中新增 LaraZhihu 应用的 sitesdatabases 的相关设置:

---
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.test
      to: /home/vagrant/Code/Laravel/public
    - map: zhihu.test # <--- 这里
      to: /home/vagrant/Code/larazhihu/public # <--- 这里

databases:
    - homestead
    - zhihu # <--- 这里

variables:
    - key: APP_ENV
      value: local

# blackfire:
#     - id: foo
#       token: bar
#       client-id: foo
#       client-token: bar

# ports:
#     - send: 93000
#       to: 9300
#     - send: 7777
#       to: 777
#       protocol: udp

扩展阅读: 如何开启 NFS 支持,请查阅 —— Wiki:Laravel Homestead:开启 NFS 解决站点响应缓慢

我们主要设置了 sitesdatabases 两项。 sites 会将域名 larazhihu.test 映射到虚拟机的 /home/vagrant/Code/larazhihu/public 文件夹上,而 databases 则为新创建的项目指定数据库名。

重启虚拟机

运行下面命令来使其更改生效:

> cd ~/Homestead && vagrant provision && vagrant reload

.env 文件

接下来,我们还需要对应用根目录下的 .env 文件进行相关设置,如下:

.env

APP_NAME=Zhihu
.
.
.
APP_URL=http://zhihu.test
.
.
.
DB_DATABASE=zhihu
DB_USERNAME=homestead
DB_PASSWORD=secret
.
.
.

访问应用

现在让我们在 Chrome 浏览器中打开 zhihu.test 你应该能看到有如下界面显示:

创建应用

Git 代码版本控制

为了在接下来更好的追踪项目代码的更改,我们还需要将新建的 Laravel 项目纳入到 Git 版本管理中:

$ cd ~/Code/larazhihu
$ git init
$ git add -A
$ git commit -m "init commit"

本文章首发在 LearnKu.com 网站上。

上一篇 下一篇
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 0
发起讨论 只看当前版本


暂无话题~