gpt4 book ai didi

ruby-on-rails - Capistrano 失败 - 没有当前目录/ bundle : not found/rolling back

转载 作者:行者123 更新时间:2023-12-04 18:30:53 25 4
gpt4 key购买 nike

最近,我将我的一个 Rails 应用程序移到了一个新配置的 EC2 ubuntu 实例。运行与旧服务器相同的 ruby​​ 版本,带有乘客的 apache。但是我仍然无法使用 Capistrano 将应用程序部署到服务器上。 .我仍然不知道该错误,所以我将我的部署日志粘贴在这里。这也是我的Capistrano recipe .感谢有人可以在这里找到问题。

$ cap deploy:setup
triggering start callbacks for `deploy:setup'
* executing `uploads:register_dirs'
* executing `deploy:setup'
* executing "mkdir -p /home/ubuntu/webapps/myapp-name /home/ubuntu/webapps/myapp-name/releases /home/ubuntu/webapps/myapp-name/shared /home/ubuntu/webapps/myapp-name/shared/system /home/ubuntu/webapps/myapp-name/shared/log /home/ubuntu/webapps/myapp-name/shared/pids /home/ubuntu/webapps/myapp-name/shared/uploads"
servers: ["ec2-184-73-xx-xxx.compute-1.amazonaws.com"]
[ec2-184-73-xx-xxx.compute-1.amazonaws.com] executing command
[ec2-184-73-xx-xxx.compute-1.amazonaws.com] sh -c 'mkdir -p /home/ubuntu/webapps/myapp-name /home/ubuntu/webapps/myapp-name/releases /home/ubuntu/webapps/myapp-name/shared /home/ubuntu/webapps/myapp-name/shared/system /home/ubuntu/webapps/myapp-name/shared/log /home/ubuntu/webapps/myapp-name/shared/pids /home/ubuntu/webapps/myapp-name/shared/uploads'
command finished in 696ms
* executing "chmod g+w /home/ubuntu/webapps/myapp-name /home/ubuntu/webapps/myapp-name/releases /home/ubuntu/webapps/myapp-name/shared /home/ubuntu/webapps/myapp-name/shared/system /home/ubuntu/webapps/myapp-name/shared/log /home/ubuntu/webapps/myapp-name/shared/pids /home/ubuntu/webapps/myapp-name/shared/uploads"
servers: ["ec2-184-73-xx-xxx.compute-1.amazonaws.com"]
[ec2-184-73-xx-xxx.compute-1.amazonaws.com] executing command
[ec2-184-73-xx-xxx.compute-1.amazonaws.com] sh -c 'chmod g+w /home/ubuntu/webapps/myapp-name /home/ubuntu/webapps/myapp-name/releases /home/ubuntu/webapps/myapp-name/shared /home/ubuntu/webapps/myapp-name/shared/system /home/ubuntu/webapps/myapp-name/shared/log /home/ubuntu/webapps/myapp-name/shared/pids /home/ubuntu/webapps/myapp-name/shared/uploads'
command finished in 205ms

以上不创建 current出于某种原因目录,但我可以看到 releasesshared目录。另外,在共享目录中,我还有另一个名为 uploads 的目录
$ cap deploy
triggering start callbacks for `deploy'
* executing `uploads:register_dirs'
* executing `deploy'
* executing `deploy:update'
** transaction: start
* executing `deploy:update_code'
executing locally: "git ls-remote . master"
command finished in 5ms
* getting (via checkout) revision a7e86283b743de666354349c56c66f80a35a6997 to /tmp/20120314153001
executing locally: git clone -q . /tmp/20120314153001 && cd /tmp/20120314153001 && git checkout -q -b deploy a7e86283b743de666354349c56c66f80a35a6997
command finished in 1879ms
compressing /tmp/20120314153001 to /tmp/20120314153001.tar.gz
executing locally: tar czf 20120314153001.tar.gz 20120314153001
command finished in 4323ms
servers: ["ec2-184-73-xx-xxx.compute-1.amazonaws.com"]
** sftp upload /tmp/20120314153001.tar.gz -> /tmp/20120314153001.tar.gz
[ec2-184-73-xx-xxx.compute-1.amazonaws.com] sftp upload /tmp/20120314153001.tar.gz -> /tmp/20120314153001.tar.gz
[ec2-184-73-xx-xxx.compute-1.amazonaws.com] sftp upload /tmp/20120314153001.tar.gz -> /tmp/20120314153001.tar.gz done
* sftp upload complete
* executing "cd /home/ubuntu/webapps/myapp-name/releases && tar xzf /tmp/20120314153001.tar.gz && rm /tmp/20120314153001.tar.gz"
servers: ["ec2-184-73-xx-xxx.compute-1.amazonaws.com"]
[ec2-184-73-xx-xxx.compute-1.amazonaws.com] executing command
[ec2-184-73-xx-xxx.compute-1.amazonaws.com] sh -c 'cd /home/ubuntu/webapps/myapp-name/releases && tar xzf /tmp/20120314153001.tar.gz && rm /tmp/20120314153001.tar.gz'
command finished in 2353ms
* executing `deploy:finalize_update'
* executing "chmod -R g+w /home/ubuntu/webapps/myapp-name/releases/20120314153001"
servers: ["ec2-184-73-xx-xxx.compute-1.amazonaws.com"]
[ec2-184-73-xx-xxx.compute-1.amazonaws.com] executing command
[ec2-184-73-xx-xxx.compute-1.amazonaws.com] sh -c 'chmod -R g+w /home/ubuntu/webapps/myapp-name/releases/20120314153001'
command finished in 294ms
* executing "rm -rf /home/ubuntu/webapps/myapp-name/releases/20120314153001/log /home/ubuntu/webapps/myapp-name/releases/20120314153001/public/system /home/ubuntu/webapps/myapp-name/releases/20120314153001/tmp/pids &&\\\n mkdir -p /home/ubuntu/webapps/myapp-name/releases/20120314153001/public &&\\\n mkdir -p /home/ubuntu/webapps/myapp-name/releases/20120314153001/tmp"
servers: ["ec2-184-73-xx-xxx.compute-1.amazonaws.com"]
[ec2-184-73-xx-xxx.compute-1.amazonaws.com] executing command
[ec2-184-73-xx-xxx.compute-1.amazonaws.com] sh -c 'rm -rf /home/ubuntu/webapps/myapp-name/releases/20120314153001/log /home/ubuntu/webapps/myapp-name/releases/20120314153001/public/system /home/ubuntu/webapps/myapp-name/releases/20120314153001/tmp/pids &&\
[ec2-184-73-xx-xxx.compute-1.amazonaws.com] mkdir -p /home/ubuntu/webapps/myapp-name/releases/20120314153001/public &&\
[ec2-184-73-xx-xxx.compute-1.amazonaws.com] mkdir -p /home/ubuntu/webapps/myapp-name/releases/20120314153001/tmp'
command finished in 211ms
* executing "ln -s /home/ubuntu/webapps/myapp-name/shared/system /home/ubuntu/webapps/myapp-name/releases/20120314153001/public/system"
servers: ["ec2-184-73-xx-xxx.compute-1.amazonaws.com"]
[ec2-184-73-xx-xxx.compute-1.amazonaws.com] executing command
[ec2-184-73-xx-xxx.compute-1.amazonaws.com] sh -c 'ln -s /home/ubuntu/webapps/myapp-name/shared/system /home/ubuntu/webapps/myapp-name/releases/20120314153001/public/system'
command finished in 193ms
* executing "ln -s /home/ubuntu/webapps/myapp-name/shared/log /home/ubuntu/webapps/myapp-name/releases/20120314153001/log"
servers: ["ec2-184-73-xx-xxx.compute-1.amazonaws.com"]
[ec2-184-73-xx-xxx.compute-1.amazonaws.com] executing command
[ec2-184-73-xx-xxx.compute-1.amazonaws.com] sh -c 'ln -s /home/ubuntu/webapps/myapp-name/shared/log /home/ubuntu/webapps/myapp-name/releases/20120314153001/log'
command finished in 189ms
* executing "ln -s /home/ubuntu/webapps/myapp-name/shared/pids /home/ubuntu/webapps/myapp-name/releases/20120314153001/tmp/pids"
servers: ["ec2-184-73-xx-xxx.compute-1.amazonaws.com"]
[ec2-184-73-xx-xxx.compute-1.amazonaws.com] executing command
[ec2-184-73-xx-xxx.compute-1.amazonaws.com] sh -c 'ln -s /home/ubuntu/webapps/myapp-name/shared/pids /home/ubuntu/webapps/myapp-name/releases/20120314153001/tmp/pids'
command finished in 191ms
* executing "ln -s /home/ubuntu/webapps/myapp-name/shared/uploads /home/ubuntu/webapps/myapp-name/releases/20120314153001/uploads"
servers: ["ec2-184-73-xx-xxx.compute-1.amazonaws.com"]
[ec2-184-73-xx-xxx.compute-1.amazonaws.com] executing command
[ec2-184-73-xx-xxx.compute-1.amazonaws.com] sh -c 'ln -s /home/ubuntu/webapps/myapp-name/shared/uploads /home/ubuntu/webapps/myapp-name/releases/20120314153001/uploads'
command finished in 191ms
* executing "find /home/ubuntu/webapps/myapp-name/releases/20120314153001/public/images /home/ubuntu/webapps/myapp-name/releases/20120314153001/public/stylesheets /home/ubuntu/webapps/myapp-name/releases/20120314153001/public/javascripts -exec touch -t 201203141535.01 {} ';'; true"
servers: ["ec2-184-73-xx-xxx.compute-1.amazonaws.com"]
[ec2-184-73-xx-xxx.compute-1.amazonaws.com] executing command
[ec2-184-73-xx-xxx.compute-1.amazonaws.com] env TZ=UTC sh -c 'find /home/ubuntu/webapps/myapp-name/releases/20120314153001/public/images /home/ubuntu/webapps/myapp-name/releases/20120314153001/public/stylesheets /home/ubuntu/webapps/myapp-name/releases/20120314153001/public/javascripts -exec touch -t 201203141535.01 {} '\'';'\''; true'
command finished in 2057ms
triggering after callbacks for `deploy:finalize_update'
* executing `uploads:symlink'
* executing "rm -rf /home/ubuntu/webapps/myapp-name/releases/20120314153001/public/uploads"
servers: ["ec2-184-73-xx-xxx.compute-1.amazonaws.com"]
[ec2-184-73-xx-xxx.compute-1.amazonaws.com] executing command
[ec2-184-73-xx-xxx.compute-1.amazonaws.com] sh -c 'rm -rf /home/ubuntu/webapps/myapp-name/releases/20120314153001/public/uploads'
command finished in 192ms
* executing "ln -nfs /home/ubuntu/webapps/myapp-name/shared/uploads /home/ubuntu/webapps/myapp-name/releases/20120314153001/public/uploads"
servers: ["ec2-184-73-xx-xxx.compute-1.amazonaws.com"]
[ec2-184-73-xx-xxx.compute-1.amazonaws.com] executing command
[ec2-184-73-xx-xxx.compute-1.amazonaws.com] sh -c 'ln -nfs /home/ubuntu/webapps/myapp-name/shared/uploads /home/ubuntu/webapps/myapp-name/releases/20120314153001/public/uploads'
command finished in 204ms
* executing `bundle:install'
* executing "ls -x /home/ubuntu/webapps/myapp-name/releases"
servers: ["ec2-184-73-xx-xxx.compute-1.amazonaws.com"]
[ec2-184-73-xx-xxx.compute-1.amazonaws.com] executing command
[ec2-184-73-xx-xxx.compute-1.amazonaws.com] sh -c 'ls -x /home/ubuntu/webapps/myapp-name/releases'
command finished in 188ms
* executing "cd /home/ubuntu/webapps/myapp-name/releases/20120314153001 && bundle install --gemfile /home/ubuntu/webapps/myapp-name/releases/20120314153001/Gemfile --path /home/ubuntu/webapps/myapp-name/shared/bundle --deployment --quiet --without development test"
servers: ["ec2-184-73-xx-xxx.compute-1.amazonaws.com"]
[ec2-184-73-xx-xxx.compute-1.amazonaws.com] executing command
[ec2-184-73-xx-xxx.compute-1.amazonaws.com] sh -c 'cd /home/ubuntu/webapps/myapp-name/releases/20120314153001 && bundle install --gemfile /home/ubuntu/webapps/myapp-name/releases/20120314153001/Gemfile --path /home/ubuntu/webapps/myapp-name/shared/bundle --deployment --quiet --without development test'
*** [err :: ec2-184-73-xx-xxx.compute-1.amazonaws.com] sh:
*** [err :: ec2-184-73-xx-xxx.compute-1.amazonaws.com] bundle: not found
*** [err :: ec2-184-73-xx-xxx.compute-1.amazonaws.com]
command finished in 189ms
*** [deploy:update_code] rolling back
* executing "rm -rf /home/ubuntu/webapps/myapp-name/releases/20120314153001; true"
servers: ["ec2-184-73-xx-xxx.compute-1.amazonaws.com"]
[ec2-184-73-xx-xxx.compute-1.amazonaws.com] executing command
[ec2-184-73-xx-xxx.compute-1.amazonaws.com] sh -c 'rm -rf /home/ubuntu/webapps/myapp-name/releases/20120314153001; true'
command finished in 435ms
failed: "sh -c 'cd /home/ubuntu/webapps/myapp-name/releases/20120314153001 && bundle install --gemfile /home/ubuntu/webapps/myapp-name/releases/20120314153001/Gemfile --path /home/ubuntu/webapps/myapp-name/shared/bundle --deployment --quiet --without development test'" on ec2-184-73-xx-xxx.compute-1.amazonaws.com

最佳答案

简而言之,似乎在服务器上找不到 bundle 命令。

您可以通过 SSH 以 'ubuntu'(部署文件中指定的用户)身份确认它已安装到服务器并尝试运行 bundle .如果您收到 command not found 错误,则可能未安装 bundler 或“ubuntu”用户没有权限。

如果上述命令确实有效,那么当 cap 尝试执行其命令时,您的环境变量可能不会被加载。我必须在部署脚本中指定以下环境变量:

default_environment['PATH'] = '/usr/local/lib/ruby/gems/1.9.1/bin:$PATH'
default_environment['GEM_PATH']= '/usr/local/lib/ruby/gems/1.9.1'

显然,调整路径以适合您的服务器配置。

我希望这有帮助!

关于ruby-on-rails - Capistrano 失败 - 没有当前目录/ bundle : not found/rolling back,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9705329/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com