nekudo / shiny_deploy
ShinyDeploy 是一个用 PHP 和 JavaScript 编写的部署工具。
Requires
- php: ^8.0
- ext-curl: *
- ext-gearman: *
- ext-intl: *
- ext-mysqli: *
- ext-zmq: *
- apix/log: 1.2.1
- cboden/ratchet: 0.4.3
- defuse/php-encryption: 2.3.1
- hassankhan/config: 2.2.0
- lcobucci/jwt: 4.1.5
- nekudo/shiny_gears: 1.0.3
- nicolab/php-ftp-client: 1.5.5
- phpseclib/phpseclib: 3.0.10
- react/zmq: 0.4.0
- vlucas/valitron: 1.4.9
This package is not auto-updated.
Last update: 2024-09-19 21:24:15 UTC
README
ShinyDeploy 是一个用 PHP 和 JavaScript 编写的部署工具。它的主要目标是提供一个简单的方法将文件从您的 Git 仓库部署到您的服务器。
特性
图形用户界面
从添加服务器和仓库到部署的所有操作都可以通过简单易用的图形用户界面进行管理。
安全数据存储
敏感数据,如用户名和密码,在存储到数据库之前会被加密。解密只能在登录时输入密码后进行。
在部署前列出已更改的文件
在部署到目标服务器之前,您可以列出自上次部署以来已更改的所有文件。使用差异视图,您甚至可以在上传之前审查更改。
在部署前后执行任务
您可以定义在每次部署前后执行的基本 SSH 命令。这个特性可能有助于重启应用程序、构建 CSS/JS 或执行部署应用程序所需的任何操作。
Webhook 支持
创建部署后,您可以生成一个 API-URL。使用此 URL,您可以从 GitHub、Bitbucket 或 Gitea 直接触发部署,一旦您将更改推送到您的仓库。
开源
整个项目是开源的,并使用 MIT 许可证。这样,您可以在本地网络中托管自己的实例,不必担心泄露敏感信息。当然,您可以根据需要修改应用程序。
安装
需求
以下软件是运行此应用程序所必需的。
- Web 服务器(Nginx、Apache 等)
- MySQL 服务器
- PHP >= 8.0
- ZeroMQ 扩展
- Gearman 扩展
- Curl 扩展
- Mysqli 扩展
安装过程
-
使用 composer 安装项目。
composer create-project nekudo/shiny_deploy myshinydeploy
-
调整以下文件夹中的配置文件
config/config.php
www/js/config.js
-
使用以下命令运行安装脚本
php cli/app.php install
-
将虚拟主机的文档根目录指向
www
目录,并将请求重写为 index.php 文件。 -
要使用此应用程序,您需要启动 WebSocket 服务器和工作者进程。这可以通过执行以下命令完成
php cli/app.php start
更新过程
要更新 ShinyDeploy 的现有实例,首先需要更新文件。您可以使用简单的 git pull
来完成此操作(如果您通过 composer 安装了应用程序),或者只需使用从项目网站下载的新副本覆盖所有文件。
一旦文件更新,您需要执行更新命令,该命令将执行所有必要的迁移
php cli/app.php update
提示:在更新 ShinyDeploy 的安装之前,请查看发行说明,以防止出现任何问题。
开发者提示
如果您想调整 CSS 或 JS,可以使用 robo.phar 重建资源。
要构建 CSS/JS 文件,请运行
php robo.phar assets
要自动在修改时重建文件,请运行
php robo.phar watch
要列出所有可用的任务,请运行
php robo.phar list
快乐黑客...
许可协议
MIT