2
最近我將其中一個rails應用程序移到了新配置的EC2 ubuntu實例中。運行與舊版服務器相同的ruby版本,apache與乘客。但我仍然無法使用Capistrano
將應用程序部署到服務器。仍然我不知道這個錯誤,所以我在這裏粘貼我的部署日誌。另外這裏是我的Capistrano recipe。感謝有人在這裏找到問題。Capistrano失敗 - 沒有當前目錄/ bundle:未找到/回滾
$ 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
目錄由於某種原因,但我可以看到releases
和shared
目錄。加上共享目錄裏面我有一個名爲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'命令工作正常。問題出在環境配置上,正如你所說的那樣,當capistrano執行它的命令時它不會被加載。我已經用解決方案更新了要點。非常感謝您的幫助。 - https://gist.github.com/2037413 – randika 2012-03-15 19:23:11
如果你不知道你的路徑,>>> printenv – 2012-03-22 00:35:49
printenv在哪裏?這些線應該放在要求'bundler/capistrano'之前? – juanpastas 2013-04-29 20:56:34