如题,找了半天貌似都没有符合laravel的天朝网络环境的的部署脚本, 于是乎结合参考了多个部署脚本和工具的理念又造了个新轮子:
https://github.com/nickfan/envoy-deployscript
使用说明见:https://github.com/nickfan/envoy-deployscript/blob/master/README.zh-CN.md
欢迎大家测试吐槽。
主要特点:
支持本地构建打包部署
|
|
支持工作拷贝本地构建依赖模块(vendor目录)
|
|
原理/设计规划
你的 $deploybasepath
远程部署基础路径将会看起来像如下这样(如果你有多个子应用在同一个部署基路径里).
|
|
你的 $deploybasepath/$appname
远程部署应用路径将会看起来如下.
|
|
正如你所见的, current 目录是软链到最近一次的部署目录的
在你的部署目录中文件列表看起来像下面这样(只列举了部分文件做例子):
|
|
部署目录中的.env文件和storage文件夹都软链接到了上级应用目录中的公共文件/文件夹了,这样部署本身只部署源代码和vendor等依赖环境, storage等公共数据在shared文件夹中并不随代码部署,节省了空间也保留延续了日志/应用cache等相关基础数据在应用中的使用