#部署 #orbit #cli-tool #http-api #服务器 #站点 #laravel

app orbit-cli

使用 Orbit 轻松部署 Laravel 站点

1 个不稳定版本

0.1.0 2024年7月23日

#977命令行工具

Download history 106/week @ 2024-07-21 11/week @ 2024-07-28

117 每月下载次数

MIT 许可证

23KB
226 代码行

🛰️ 将您的 Laravel 站点放入 Orbit。

Orbit 提供了一种简单的方法,只需几秒钟即可将您的 Laravel 站点部署到您的服务器。

开始使用

  1. 在您的 VPS 上启动 Orbit 服务器。您需要一个 GitHub 令牌 和服务器二进制文件(还有一个 Docker 镜像)!

    Orbit 服务器公开了一个 HTTP API,您需要将其公开给外界。

  2. 创建一个 Orbit.toml 配置文件,并将您的站点添加到其中,如下所示
version = 1
token = ""  # Use `openssl rand -base64 32` to generate a random token

[[sites]]
name = "Test Site"
path = "/var/www/test-site"
github_repo = "m1guelpf/laravel-test"
commands = [ # Extra commands to run during the deployment (optional)
    "php horizon:terminate"
]
  1. 创建一个 .github/workflows/deploy.yaml GitHub 动作,如下所示
name: Deploy to prod
on:
    push:
        branches: [main]

jobs:
    deploy:
        runs-on: ubuntu-latest
        steps:
            - name: Deploy to prod
              uses: m1guelpf/orbit@main
              with:
                  site: alexandria # slug of your site, generated from the name above
                  orbit-url: ${{ secrets.ORBIT_URL }} # URL to your Orbit instance
                  orbit-token: ${{ secrets.ORBIT_TOKEN }} # The token you generated on your Orbit config
  1. 就是这样!将代码推送到 main 将会部署您的站点,您的用户无需停机 🎉

架构

🌐 Orbit 服务器

Orbit 服务器是系统的核心组件。它公开了一个 HTTP API,允许您触发部署并实时返回结果。它是包含部署站点逻辑的模块。

🌠 Orbit 客户端

为了简化与服务器交互,Orbit 客户端提供了一个简单的 Rust 接口来调用 API,处理序列化等。如果您想编写自己的 Orbit 集成,它将允许您像与其他 crate 一样与服务器交互。

🐙 Orbit CLI & GitHub Action

为了使部署对最终用户更简单,Orbit 还包括一个 CLI,它提供了用户友好的实时输出。如果您想从 GitHub Actions 运行它,它还包含在其自己的 GitHub Action 中,使零停机时间部署只需一行更改。

许可证

本项目采用 MIT 许可证 - 有关详细信息,请参阅 LICENSE 文件

依赖项

~10–21MB
~308K SLoC