在 Capistrano 部署中使用独角兽时遇到问题。据我所知,Capistrano 使用了一个方案,每个版本都以唯一的名称部署在发布目录中,如果事务成功,则创建一个名为 current 的符号链接,指向该版本。
所以我最终得到了一个部署目录,例如:
/home/deployer/apps/sample_app/current
然后,当我尝试从 binstubs 目录启动 unicorn 时,所有 unicorn 方法都会在以下路径中查找内容,特别是在 configurator.rb 模块中:
/home/deployer/apps/sample_app
我无法完全理解 unicorn 如何从这里设置 working_directory:
https://github.com/defunkt/unicorn/raw/master/lib/unicorn/configurator.rb
但是我想与社区核实一下,由于我的菜鸟本性,我是否遗漏了一些明显的东西。
顺便说一句,我开始独角兽如下
APP_ROOT=/home/deployer/apps/sample_app/current
PID=$APP_ROOT/tmp/pids/unicorn.pid
CMD="$APP_ROOT/bin/unicorn -D -E production -c $APP_ROOT/config/unicorn.rb"
TIA