所以 - 假设我开发了一个 PHP 应用程序,我在一个与生产环境相同的 vagrant box 中开发它。所以 - 作为最终结果,我将拥有一个带有代码的 *.tar.zip 文件......
如何将部署组织到有大量应用程序服务器的生产环境中?我的意思是-我很困惑如何一次将代码同步推送到生产中?
更多信息:
服务器上的代码存储如下:
project
+current_revision ->link to revisions/v[n]
+revisions
+v1
+v2
+v3
...
+data
因此,当我必须部署更改时,我通常会运行一个部署脚本,该脚本使用 ssh 将更新的 tar 上传到服务器上,解压缩到特定目录下的修订版,将其符号链接到 current_revision 并重新启动 php-fpm .... 这样我就可以随时回滚符号链接到旧版本。
对于多台服务器,困扰我的是并非所有盒子都会立即更新,即。从技术上讲,可能会出现一些故障。