aristolochic
2021-04-26 14:30:21 +08:00
以前 Ruby 生态搞出来的基于 ssh 的部署工具 Capistrano 流行过一段时间,依靠插件简化的部分大概是拉取版本管理系统的提交、保留多个版本供回滚用、多版本共享目录、自动运行 migration 等等,还有生成和自动重启中间件 /应用服务器( Python 的话就是 WSGI,Ruby 就是 Rack,PHP……是啥不知道,没用过) systemd 服务,还有生成 Nginx 配置啥的(不过感觉提供 systemd 和 Nginx 管理的插件就是用来给不怎么懂这些东西的人一个开箱即用的最佳实践,有需要可以手动编辑)。当时不止 Ruby on Rails 的人在用,PHP 和 Python 也有一些。当然现在也不是不能用,就是装 Ruby 和熟悉 Ruby 不是很多人都能接受(因为 Ruby 生态的东西,配置文件一般也是 Ruby 造的 DSL )
小规模的话最好不用也没必要,但是理念可以参考一些,比如利用软链接在多个版本间共享前端资产、用户上传的图片等公共资源、数据库 Schema 和服务器 pid 和 socket 文件目录等等,不知道怎么写 Systemd service 也可以照抄,Nginx 配置也可以照抄(虽然现在可能用 Caddy 和 HAProxy 的多了?),还有写点脚本来搞点服务端的自动化之类的
要是不痛恨 Docker 的话,就 Docker 得了