本笔记根据 learnku 教程边学边记而成。该教程以搭建出一个类似微博的web 应用为最终成果,在过程中学习 laravel 的相关知识。

准备开发环境

原教程使用官方推荐的 homestead 开发环境。由于最近 docker 开始流行,并且也有相应的 laravel 对应的容器。所以本文以 laradock 作为开发环境。

安装 laradock

  1. 克隆 laradock 仓库到本地。

    git clone https://github.com/laradock/laradock.git

    最终文件夹结构应该像这样:

    + laradock
    + project-z
  2. 配置 laradock

    复制配置文件
    bash cd laradock cp env-example .env #复制配置文件

    进入 workspace
    bash docker-compose up -d nginx #运行 laradock docker-compose exec --user=laradock workspace bash #进入 laradock workspace

    配置国内加速镜像

    # workspace
    composer config -gl    #查看composer设置
    composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/    #设置国内加速镜像

构建页面

创建应用

# workspace
composer create-project laravel/laravel weibo --prefer-dist "5.8.*"

配置 nginx 域名

cp nginx/sites/laravel.conf.example nginx/sites/weibo.conf

修改新复制出的配置文件里的路径为将要创建的项目路径。

修改 host

编辑 c:/windows/system32/drivers/etc/hosts
增加一条 127.0.0.1 weibo.test

.env 文件
.env 文件包含了项目的一些设置,我们进行一些修改。

app_name=weibo
app_env=local
app_key=base64:nsvnm5l0n5cozt/dfqfuoylkyffhdpnkpuyu4awmdpc=
app_debug=true
app_url=http://weibo.test

为了方便,我们在本地使用 sqlite 数据库。
注释掉原有 db 相关设置,添加下面内容

db_connection=sqlite
db_database=/database/database.sqlite

并且创建相应数据库文件

touch database/database.sqlite

使用 git 管理代码

cd weibo
git init
git add -a
git commit -m "initial commit"

上传到 gitee

git remote add origin git@gitee.com:codingbit/weibo.git
git push -u origin master

上线代码到 heroku

创建 heroku app

heroku create

配置 procfile 文件:

echo web: vendor/bin/heroku-php-apache2 public/ > procfile
git add -a
git commit -m "procfile for heroku"
git push
heroku buildpacks:set heroku/php

生成 app key

# workspace
$ php artisan key:generate --show
base64:ta1ae+e8kuydflurburhetl4hy71wtoffyngukldmww=
# host
heroku config:set app_key=base64:ta1ae+e8kuydflurburhetl4hy71wtoffyngukldmww=

推送到 heroku 上

git push heroku master

上传成功,访问地址 即可看到效果。