2.2. 安装 Laravel-Shop
安装 Laravel Shop
本课程的代码是在课程五的代码 Laravel Shop 为基础开发的,因此需要先将 Laravel Shop 安装到 Homestead 中。
1. 新增站点
学习过课程五的同学可以跳过这一步。
首先我们需要在 Homestead 中创建一个新的站点,在 Homestead 的配置文件中添加站点和数据库:
~/Homestead/Homestead.yaml
sites:
- map: shop.test
to: /home/vagrant/Code/laravel-shop/public
.
.
.
databases:
- homestead
- laravel-shop
然后还需要配置本机 hosts 文件,将 shop.test
指向 Homestead 虚拟机 IP,具体操作请参考 Laravel 开发环境部署。
使用下面命令来重启 Homestead:
> cd ~/Homestead
> vagrant up --provision
2. 创建代码仓库
由于本课程后面的章节需要将代码部署到服务器,因此每个同学都需要有自己的代码仓库。
这里我们使用 Github 的 Import 而不是 Fork 来复制仓库,是因为 Github 限制每个用户对一个仓库只能 Fork 一次,有些学习过课程五的同学之前已经 Fork 过这个仓库,就无法再次 Fork 了。
访问 github.com/new/import ,在 Your old repository’s clone URL
框中填入 https://github.com/summerblue/laravel-shop
,Name
填入 laravel-shop-advanced
,然后点击 Begin import
按钮:
然后 Github 就会开始从原仓库克隆代码:
稍等一会儿,页面提示已经克隆完成:
点击链接进入仓库页面:
点击 Clone or download
按钮,如果默认不是 SSH 形式需要切换成 SSH,然后复制框中的地址。
3. 克隆代码
接下来我们要在 Homestead 中克隆代码:
$ cd ~/Code/
$ git clone {刚刚复制的仓库地址} laravel-shop
学习过课程五的同学在目录下可能已经存在
laravel-shop
目录,我建议先把原来的目录删除或者重命名为laravel-shop-old
,然后再执行克隆操作。
4. 安装 PHP 依赖
现在我们来安装一下项目依赖,在此之前我们先在虚拟机中运行以下命令来实现 Composer 安装加速 :
$ composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
然后进入项目目录并使用 composer 安装依赖:
$ cd ~/Code/laravel-shop
$ composer install
5. 安装 Nodejs 依赖
接下来我们安装一下 Nodejs 依赖,同样先配置镜像加速:
$ yarn config set registry https://registry.npm.taobao.org
然后使用 yarn 命令安装 Nodejs 依赖:
$ SASS_BINARY_SITE=http://npm.taobao.org/mirrors/node-sass yarn
这个过程可能会比较久,需要耐心等待。
安装完成之后我们来编译一下前端代码:
$ yarn dev
6. 配置 .env 文件
接下来我们需要配置一下 .env
文件,先从 .env.example
复制一份出来:
$ cp .env.example .env
然后修改 .env
文件:
.env
APP_NAME="Laravel Shop"
.
.
.
APP_URL=http://shop.test
.
.
.
DB_DATABASE=laravel-shop
.
.
.
QUEUE_DRIVER=redis
.
.
.
MAIL_DRIVER=smtp
MAIL_HOST=127.0.0.1
MAIL_PORT=1025
.
.
.
然后我们通过 Laravel 的命令自动生成 APP_KEY
值:
$ php artisan key:generate
7. 创建软链
接下来我们需要在 public
目录下创建一个连到 storage/app/public
目录下的软链接:
$ php artisan storage:link
8. 初始化数据库
学习过课程五的同学需要先清空数据库:
php artisan migrate:fresh && php artisan migrate:reset
,然后继续后面的操作。
现在执行数据库迁移:
$ php artisan migrate
然后导入管理后台数据:
$ mysql laravel-shop < database/admin.sql
管理后台初始账号:
admin
密码:admin
,后台地址为http://shop.test/admin
。
9. 访问应用
接下来我们在浏览器地址栏输入 shop.test ,应该能看到如下界面: