khazhinov / laravel-api-skeleton
Laravel API 开发项目骨架。
11.0.5
2024-01-16 07:03 UTC
Requires
- php: ^8.1
- guzzlehttp/guzzle: ^7.2
- khazhinov/laravel-lighty: ^11.0
- laravel/framework: ^10.0
- laravel/octane: ^2.0
- laravel/sanctum: ^3.2
- laravel/telescope: ^4.14
- laravel/tinker: ^2.8
- nyholm/psr7: ^1.5
- spatie/data-transfer-object: ^3.8
- spiral/roadrunner: v2023.3.9
- spiral/roadrunner-cli: ^2.6.0
- spiral/roadrunner-http: ^3.3.0
Requires (Dev)
- barryvdh/laravel-ide-helper: ^2.13
- fakerphp/faker: ^1.9.1
- friendsofphp/php-cs-fixer: ^3.11
- fruitcake/laravel-telescope-toolbar: ^1.3
- laravel-lang/attributes: ^2.0
- laravel-lang/lang: ^12.1
- laravel-lang/publisher: ^14.3
- mockery/mockery: ^1.4.4
- nunomaduro/collision: ^7.0
- phpstan/extension-installer: ^1.1
- phpstan/phpstan-symfony: ^1.2
- phpunit/phpunit: ^10.0
- predis/predis: ^2.2
- roave/security-advisories: dev-latest
- spatie/laravel-ignition: ^2.0
README
Laravel API Skeleton ☠️
Laravel API 项目骨架
创建应用程序
要从零创建应用程序,请运行以下命令
$ composer create-project khazhinov/laravel-api-skeleton my-awesome-project
然后安装所有依赖项后,切换到创建的项目文件夹
$ cd ./my-awesome-project
请务必执行
$ git init
执行完毕后,启动所需环境
$ docker-compose up -d
请等待几分钟,数据库初始化完成。请确保容器 PostgreSQL 在日志中输出类似的内容
2022-09-25 11:45:22.790 UTC [1] LOG: database system is ready to accept connections
然后执行数据库初始化
$ php artisan migrate --seed
现在只差一点就可以看到魔法了 🌃
现在启动 web 服务器
$ php artisan serve
现在通过 此链接 进入!
文档是通过处理代码内部的类得到的。看看控制器:App\Http\Controllers\Api\V1_0\ExampleEntity\ExampleEntityCRUDController
要生成新的实体,只需使用
$ php artisan lighty:generator AnotherEntity v1.0 --migration
使用 PHP 管理容器
在此实现中,假设使用 Roadrunner。Dockerfile 和 docker-compose 中描述的容器示例可用于初次启动环境。启动应用程序只需要 Docker。试试看!
使用以下方式构建容器
$ docker-compose -f docker-compose-containerized.yaml build
使用以下方式启动所需环境
$ docker-compose -f docker-compose-containerized.yaml up -d
在启动任何容器时自动执行迁移,而种子需要手动执行一次
$ docker-compose -f docker-compose-containerized.yaml exec -T api php artisan db:seed
使用以下命令停止
$ docker-compose -f docker-compose-containerized.yaml down
这是一个示例,说明如何在容器内执行命令,同时你的本地环境中没有 PHP
$ docker-compose -f docker-compose-containerized.yaml exec -T api php artisan migrate:refresh --seed