atymic / vapor-core
Laravel Vapor 的内核和调用处理器
v2.37.1
2024-04-01 23:22 UTC
Requires
- php: ^7.2|^8.0
- aws/aws-sdk-php: ^3.80
- guzzlehttp/guzzle: ^6.3|^7.0
- guzzlehttp/promises: ^1.4|^2.0
- hollodotme/fast-cgi-client: ^3.0
- illuminate/container: ^6.0|^7.0|^8.0|^9.0|^10.0|^11.0
- illuminate/http: ^6.0|^7.0|^8.0|^9.0|^10.0|^11.0
- illuminate/queue: ^6.0|^7.0|^8.0|^9.0|^10.0|^11.0
- illuminate/support: ^6.0|^7.0|^8.0|^9.0|^10.0|^11.0
- monolog/monolog: ^1.12|^2.0|^3.2
- nyholm/psr7: ^1.0
- riverline/multipart-parser: ^2.0.9
- symfony/process: ^4.3|^5.0|^6.0|^7.0
- symfony/psr-http-message-bridge: ^1.0|^2.0|^6.4|^7.0
- vlucas/phpdotenv: ^5.3
Requires (Dev)
- mockery/mockery: ^1.2
- orchestra/testbench: ^4.0|^5.0|^6.0|^7.0|^8.0|^9.0
- phpstan/phpstan: ^1.10
- phpunit/phpunit: ^8.0|^9.0|^10.4
- v2.37.1
- v2.35.0
- v2.32.1
- v2.31.0
- v2.29.0
- v2.28.0
- v2.22.2
- v2.22.0
- v2.21.3
- v2.12.3
- v2.12.2
- v2.12.1
- v2.12.0
- v2.11.0
- v2.10.2
- v2.10.1
- v2.10.0
- v2.9.11
- v2.9.10
- v2.9.9
- v2.9.8
- v2.9.7
- v2.9.6
- v2.9.5
- v2.9.4
- v2.9.3
- v2.9.2
- v2.9.1
- v2.9.0
- v2.8.2
- v2.8.1
- v2.8.0
- v2.7.3
- v2.7.2
- v2.7.1
- v2.7.0
- v2.6.1
- v2.6.0
- v2.5.5
- v2.5.4
- v2.5.3
- v2.5.2
- v2.5.1
- v2.5.0
- v2.4.2
- v2.4.1
- v2.4.0
- v2.3.1
- v2.3.0
- v2.2.4
- v2.2.3
- v2.2.2
- v2.2.1
- v2.2.0
- v2.1.0
- 2.0.x-dev
- v2.0.9
- v2.0.8
- v2.0.7
- v2.0.6
- v2.0.5
- v2.0.4
- v2.0.3
- v2.0.2
- v2.0.1
- v2.0.0
- 1.0.x-dev
- dev-master / 1.0.x-dev
- v1.0.4
- v1.0.3
- v1.0.2
- v1.0.1
- v1.0.0
This package is auto-updated.
Last update: 2024-08-31 00:35:48 UTC
README
上游变更
默认情况下,vapor 会直接将您的 .env
变量传递给 lambda 函数。不幸的是,这有一个 2kb 的限制 - 很容易超过,尤其是与许多外部服务交互的应用程序。目前,Laravel 团队建议为每个额外的环境变量创建一个密钥,这是不可行的。
此官方包的分支增加了扩展 ENV 支持。这是通过将您的附加 .env
文件推送到一个密钥来实现的,该密钥就像 Laravel 中的正常 dotenv 一样加载。理想情况下,这将集成到核心中,但 Laravel 团队目前似乎没有优先考虑这个问题。
更改非常小且单一,您可以通过对比此分支与官方仓库来查看。
使用此包
- 更新您的
composer.json
,使用repositories
选项指向分支。
"repositories": [ { "type": "github", "url": "https://github.com/atymic/vapor-core" } ],
- 将您的版本更新到最新标签(第一个版本为 2.21.3),其中包含密钥代码。请确保将其锁定到特定版本(否则,当 Laravel 更新主线包时,您将被升级并且没有密钥代码)。订阅 仓库的发布通知,以便在发布新版本时进行更新。
- 创建一个额外的
.env
文件,例如,.env.extended
(请确保将其添加到 .gitignore)。此文件可以长达 10kb - 更新您的生产部署脚本,将扩展的 env 文件推送到一个密钥(例如
vapor secret --name DOT_ENV_EXTENDED --file .env.extended production
)- 任何以
DOT_ENV
开头的名称的密钥都将由 Laravel 加载为env
文件
- 任何以
- 您的应用程序将在运行时加载额外的密钥文件!
上游 Readme
Laravel Vapor 是一个自动扩展的无服务器部署平台,用于 Laravel,由 AWS Lambda 提供。在 Vapor 上管理您的 Laravel 基础设施,并爱上无服务器扩展性和简单性。
Vapor 抽象了在 AWS Lambda 上管理 Laravel 应用程序以及将这些应用程序与 SQS 队列、数据库、Redis 集群、网络、CloudFront CDN 等接口的复杂性。
此仓库包含用于在无服务器环境中使 Laravel 应用程序平稳运行的内核服务提供者和运行时客户端。有关 Vapor 和如何使用此仓库的更多信息,请参阅 官方文档。