SuperAPI AI 工具集

deploying-to-cloud

部署与运维

查看项目

更新于 10-16 19:55

技能介绍

这是 Laravel Cloud CLI 的部署技能,用于在 Laravel Cloud 上部署并管理 Laravel 应用。所有 Cloud 操作应通过 Cloud CLI 完成,而不是依赖仪表盘或直接调 API。

用途与安装 在项目内安装:composer require --dev laravel/cloud-cli。默认以 ./vendor/bin/cloud 调用;仅在无法使用项目级安装时,才用 composer global require laravel/cloud-cli 全局安装并以 cloud 调用。执行 cloud auth -n 进行认证(会打开浏览器);若环境无浏览器,可设置 LARAVEL_CLOUD_TOKEN,或用 cloud auth:token --add --token=<token> -n 保存令牌。

主要能力

  • 应用部署:Laravel Cloud 从 GitHub、GitLab 或 Bitbucket 部署,新应用需 PHP 8.2+、Laravel 9+、已连接 Git 提供方及部署区域。Cloud 按应用创建环境(如 production、staging、preview),各自拥有计算、资源和部署设置。Cloud 构建 Docker 镜像并运行构建与部署命令,零停机切换流量;默认开启推送即部署,也支持手动部署与部署钩子。构建和部署命令超时为 15 分钟。
  • 配置与资源:附加的数据库、缓存和对象存储会自动注入连接变量,自定义环境变量优先级更高。组织级加密值使用 Secrets Manager;环境文件系统是临时的,需用数据库或 Valkey 保存持久缓存与会话,用对象存储保存持久文件。
  • 队列与调度:推荐使用托管队列,自动扩缩容;为 App 或 Worker 集群启用调度器可每分钟运行 schedule:run,多副本时用 onOneServer。仅 Flex 计算规格可缩容到零。
  • 域名与存储:首次成功部署后每个环境获得 laravel.cloud 域名,自定义域名在配置 DNS 后自动验证并签发 SSL。
  • CLI 命令:遵循 CRUD 模式(resource:list/get/create/update/delete),资源包括 application、environment、instance、database-cluster、database、cache、bucket、domain、websocket-cluster、background-process、secret、command、deployment 等。
  • 部署工作流:首次部署先查看 cloud ship -h;已有应用用 cloud deploy {app_name} {environment} -n --open,随后 cloud deploy:monitor -n。Monorepo 可加 --root-directory=<subdir>。
  • 密钥、邮件、远程访问:用 secret:create/attach 管理密钥(值需管道传入),Resend 管理邮件发送,cloud tinker 与 cloud command:run 支持远程执行代码与命令。
  • 计费与用量:cloud usage --json -n 查看用量,支持 --period、--environment、--detailed。

使用方式与限制 所有命令建议加 -n 避免挂起,不要使用 -q 或 --silent。读取类命令用 --json -n,更新加 --force,删除用 -n --force。破坏性命令(删除应用、环境、数据库等)必须先与用户确认。每次部署后都要运行 deploy:monitor;失败时用 deployment:logs 查看失败步骤。命令签名不要硬编码,运行时用 cloud <command> -h 查询。密钥需要 sodium 扩展。涉及实例规格、区域、集群类型等未指定项应向用户询问。缺少官方文档时可通过 https://cloud.laravel.com/docs/llms.txt 获取。