1个不稳定版本
0.1.0 | 2024年7月23日 |
---|
#3 在 #laravel
108 每月下载量
在 3 crates 中使用
6KB
62 代码行
🛰️ 将您的Laravel站点放入轨道。
Orbit提供了一种简单的方法,在几秒钟内将您的Laravel站点部署到服务器。
开始使用
- 在您的VPS上设置并运行Orbit服务器。您需要一个 GitHub令牌 和服务器二进制文件(还有一个 Docker镜像)!
Orbit服务器公开了一个HTTP API,您需要将其公开给外界。
- 创建一个
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"
]
- 创建一个
.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
- 就是这样!将代码推送到
main
将现在部署您的网站,而不会对用户造成停机 🎉
架构
🌐 Orbit服务器
Orbit服务器是系统的主组件。它公开了一个HTTP API,允许您触发部署并实时流回结果。这是包含部署网站逻辑的模块。
🌠 Orbit客户端
为了使与服务器交互更容易,Orbit客户端提供了一个简单的Rust接口来调用API,处理序列化等。如果您想编写自己的Orbit集成,它将允许您像另一个crate一样与服务器交互。
🐙 Orbit CLI & GitHub操作
为了使最终用户的部署更容易,Orbit还包括一个CLI,它提供了用户友好的实时输出以进行部署。如果您想从GitHub Actions运行它,它还包含在其自己的GitHub Action中,使零停机部署只需一行更改。
许可协议
本项目采用MIT许可协议 - 有关详细信息,请参阅LICENSE文件。
依赖项
~0.4–1MB
~23K SLoC