【问题标题】:capistrano deploy fails on starting sidekiqcapistrano 部署在启动 sidekiq 时失败
【发布时间】:2016-10-31 17:34:00
【问题描述】:

直到sidekiq:start

00:18 sidekiq:start
      01 sidekiq --index 0 --pidfile /home/user/cap/shared/tmp/pids/sidekiq-0.pid --environment production --logfile /home/user/cap/shared/log/sidekiq.log --concurrency 4 --daemon
      01 /usr/bin/env: sidekiq: No such file or directory
(Backtrace restricted to imported tasks)
cap aborted!
SSHKit::Runner::ExecuteError: Exception while executing as user@app.domain.com: sidekiq exit status: 127
sidekiq stdout: Nothing written
sidekiq stderr: /usr/bin/env: sidekiq: No such file or directory

SSHKit::Command::Failed: sidekiq exit status: 127
sidekiq stdout: Nothing written
sidekiq stderr: /usr/bin/env: sidekiq: No such file or directory

Tasks: TOP => sidekiq:start
(See full trace by running task with --trace)
The deploy has failed with an error: Exception while executing as user@app.domain.com: sidekiq exit status: 127
sidekiq stdout: Nothing written
sidekiq stderr: /usr/bin/env: sidekiq: No such file or directory

** DEPLOY FAILED
** Refer to log/capistrano.log for details. Here are the last 20 lines:

 DEBUG [c0e43b64] Command: if test ! -d /home/user/cap/releases/20160629062112; then echo "Directory does not exist '/home/user/cap/releases/20160629062112'" 1>&2; false; fi
 DEBUG [c0e43b64] Finished in 0.079 seconds with exit status 0 (successful).
 DEBUG [2c3323b9] Running /usr/bin/env [ -f /home/user/cap/shared/tmp/pids/sidekiq-0.pid ] as user@app.domain.com
 DEBUG [2c3323b9] Command: cd /home/user/cap/releases/20160629062112 && ( export RBENV_ROOT="$HOME/.rbenv" RBENV_VERSION="2.3.0" ; /usr/bin/env [ -f /home/user/cap/shared/tmp/pids/sidekiq-0.pid ] )
 DEBUG [2c3323b9] Finished in 0.083 seconds with exit status 1 (failed).
  INFO [6813e38f] Running /usr/bin/env ln -s /home/user/cap/releases/20160629062112 /home/user/cap/releases/current as user@app.domain.com
 DEBUG [6813e38f] Command: ( export RBENV_ROOT="$HOME/.rbenv" RBENV_VERSION="2.3.0" ; /usr/bin/env ln -s /home/user/cap/releases/20160629062112 /home/user/cap/releases/current )
  INFO [6813e38f] Finished in 0.080 seconds with exit status 0 (successful).
  INFO [6d1d7708] Running /usr/bin/env mv /home/user/cap/releases/current /home/user/cap as user@app.domain.com
 DEBUG [6d1d7708] Command: ( export RBENV_ROOT="$HOME/.rbenv" RBENV_VERSION="2.3.0" ; /usr/bin/env mv /home/user/cap/releases/current /home/user/cap )
  INFO [6d1d7708] Finished in 0.080 seconds with exit status 0 (successful).
 DEBUG [0dbc1637] Running if test ! -d /home/user/cap/releases/20160629062112; then echo "Directory does not exist '/home/user/cap/releases/20160629062112'" 1>&2; false; fi as user@portal.nordcloud…
 DEBUG [0dbc1637] Command: if test ! -d /home/user/cap/releases/20160629062112; then echo "Directory does not exist '/home/user/cap/releases/20160629062112'" 1>&2; false; fi
 DEBUG [0dbc1637] Finished in 0.079 seconds with exit status 0 (successful).
 DEBUG [6b62769e] Running /usr/bin/env [ -f /home/user/cap/shared/tmp/pids/sidekiq-0.pid ] as user@app.domain.com
 DEBUG [6b62769e] Command: cd /home/user/cap/releases/20160629062112 && ( export RBENV_ROOT="$HOME/.rbenv" RBENV_VERSION="2.3.0" ; /usr/bin/env [ -f /home/user/cap/shared/tmp/pids/sidekiq-0.pid ] )
 DEBUG [6b62769e] Finished in 0.081 seconds with exit status 1 (failed).
  INFO [eaed2dfc] Running /usr/bin/env sidekiq --index 0 --pidfile /home/user/cap/shared/tmp/pids/sidekiq-0.pid --environment production --logfile /home/user/cap/shared/log/sidekiq.log --concurrency …
 DEBUG [eaed2dfc] Command: cd /home/user/cap/releases/20160629062112 && ( export RBENV_ROOT="$HOME/.rbenv" RBENV_VERSION="2.3.0" ; /usr/bin/env sidekiq --index 0 --pidfile /home/user/cap/shared/tmp/p…
 DEBUG [eaed2dfc]   /usr/bin/env: sidekiq: No such file or directory

有没有人提示发生了什么,它在/usr/bin/env 中寻找什么以及邮件问题:我该如何解决?

【问题讨论】:

  • 这可能会帮助您检查 ruby​​ 文件 stackoverflow.com/questions/19716131/…
  • 可能有一些文件使用 /usr/bin/env: sidekiq 所以它@98​​7654325@ ?
  • @RajarshiDas 嘿,感谢您的链接!但在那里没有找到解决方案..
  • Capistrano 尝试通过名为 sidekiq 的 env 运行可执行文件。创建该文件并将其路径添加到 PATH 变量。

标签: ruby-on-rails deployment capistrano sidekiq


【解决方案1】:

看起来你使用的是 rbenv。您是否还包含 Capistrano 支持 gem?

https://github.com/capistrano/rbenv

另外,看看this bug report - 可能会有所帮助!

【讨论】:

  • 你已经看过这个错误报告了吗? github.com/seuros/capistrano-sidekiq/issues/147
  • 酷!错误报告为 capistrano-sidekiq 做到了!但是现在在 capistrano-sidekiq/monit 上部署失败 - 你知道为什么吗?
  • 在不知道错误的情况下,我只能说我必须修改 :sidekiq_monit_conf_dir 以匹配我的 Fedora 安装中的 Monit 路径。
  • 文件夹 /etc/monit/conf.d 是否存在?这就是我必须调整的路径
猜你喜欢
  • 2017-04-30
  • 1970-01-01
  • 1970-01-01
  • 2016-08-19
  • 1970-01-01
  • 1970-01-01
  • 2016-06-11
  • 2015-07-12
相关资源
最近更新 更多