Tag: capistrano

Capistrano无法创建符号链接:文件存在

我有Capistrano 3的Rails 4应用程序。 # deploy.rb set :application, ” set :user, ” set :repo_url, ” set :branch, ‘master’ ask :branch, proc { `git rev-parse –abbrev-ref HEAD`.chomp } set :deploy_to, “/home/#{fetch :user}/apps/#{fetch :application}” set :scm, :git set :format, :pretty set :log_level, :debug set :pty, true set :linked_files, %w{config/application.yml} set :linked_dirs, %w{bin log tmp vendor/bundle public/system public/deploy} # […]

使用Unicorn生产的回形针:未初始化的常量Paperclip(NameError)

我将Paperclip添加到我的应用程序中,然后尝试使用capistrano部署到我的VPS。 部署成功,但是当我尝试在VPS上访问我的应用程序时,我得到了Rails错误页面。 production.log没有信息,但是unicorn.log有以下错误: E, [2013-06-25T19:44:07.372060 #21995] ERROR — : uninitialized constant Paperclip (NameError) /home/deployer/apps/arcsite/releases/20130625182331/config/initializers/paperclip.rb:1:in `’ 初始化文件是paperclip.rb并具有以下内容: Paperclip.interpolates :zone do |attachment, style| attachment.instance.zone_id end 这是一个允许我使用我想要的文件夹结构的插值器。 如果我删除paperclip.rb初始化文件,我得到一个错误,在我的类中未定义has_attachment ,使得看起来像paperclip gem没有正确加载。 我试图卸载/重新安装gem,但是当我运行gem uninstall paperclip ,它告诉我没有安装paperclip gem。 当我运行bundle show paperclip它确实显示了一个目录(我正在使用RVM),所以我用gem install paperclip手动安装了paperclip gem。 我仍然得到同样的错误。 此应用程序在thin服务器上的开发工作正常。 我的VPS设置: nginx的 独角兽 RVM Capistrano的 rails版本:3.2.13 paperclip版本:3.4.2 我跟着Ryan的截屏设置了nginx / unicorn

capistrano密码提示

卡皮斯特拉诺一直在问我每个吝啬鬼的密码。 我怎么不让它发生? ruby版本1.8.7 REE capistrano版本2.5.19 这是我的capfile和目录权限。 http://pastie.org/1189919 Everything up-to-date ** transaction: start * executing `deploy:update_code’ updating the cached checkout on all servers executing locally: “git ls-remote g…@github.com:username/ app_name.git master” * executing “if [ -d /var/www/app_name/shared/cached-copy ]; then cd /var/www/app_name/shared/cached-copy && git fetch -q origin && git reset -q –hard 5d47453e28385200daa971ca4982632caf7fb67e && git clean – q […]

Rails 4 + Capistrano 3:部署:检查不工作

我可以成功SSH到我的服务器。 但是,当我进行deploy:check ,它给了我: Nets-Mac-Pro:mysite emai$ be cap staging deploy:check INFO[e67f845c] Running /usr/bin/env mkdir -p /tmp/mysite-staging/ on mysite-staging.nettheory.com DEBUG[e67f845c] Command: /usr/bin/env mkdir -p /tmp/mysite-staging/ Text will be echoed in the clear. Please install the HighLine or Termios libraries to suppress echoed text. Enter passphrase for /Users/emai/.ssh/id_rsa: Enter passphrase for /Users/emai/.ssh/id_rsa: Enter passphrase for /Users/emai/.ssh/id_rsa: SSHKit::Runner::ExecuteError: Exception […]

使用capistrano部署rails应用程序时的符号链接警告

在尝试使用capistrano部署我的rails应用程序时,我感到很困惑。 警告如下:[弃用警告]此API已更改,请挂钩部署:create_symlink而不是deploy:symlink 任何人都可以向我解释一下卡斯特拉诺试图做什么吗? 以及如何解决这个问题? 任何帮助都会非常感激! 哦,这是我的部署文件。 $:.unshift(File.expand_path(‘./lib’, ENV[‘rvm_path’])) # Add RVM’s lib directory to the load path. require “rvm/capistrano” # Load RVM’s capistrano plugin. set :application, “Project” set :scm, “git” set :repository, “ssh://git@server.project.ca/usr/local/git_root/project.git” set :user, “deploy” #set :rvm_bin_path, “/usr/local/rvm/bin” set :rvm_ruby_string, “ruby-1.9.2-p290@project” set :normalize_asset_timestamps, false ssh_options[:forward_agent] = true set :branch, “master” set :deploy_via, :remote_cache set […]

Rubber和Amazon EC2托管问题(Net :: SSH :: AuthenticationFailed:root)

我想在Amazon EC2服务器上托管我的ruby on rails应用程序。 我在Ubuntu上关注Rubber和Amazon EC2的铁路广播。 当我执行cap rubber:create_staging命令时,它显示的错误是这样的 – * 2013-06-19 17:00:53 executing `rubber:setup_remote_aliases’ servers: [“production.ginfy.com”, “www.ginfy.com”, “foo.ginfy.com”, “ginfy.ginfy.com”, “temple.ginfy.com”, “ibetter.ginfy.com”] connection failed for: www.ginfy.com (Timeout::Error: execution expired), ibetter.ginfy.com (Timeout::Error: execution expired), temple.ginfy.com (Timeout::Error: execution expired), ginfy.ginfy.com (Timeout::Error: execution expired), production.ginfy.com (Net::SSH::AuthenticationFailed: root) 我已经检查过google group和github有关此问题的问题,但没有任何对我有用 。 不知道为什么我收到这个错误? 我无法弄清楚问题。 请帮忙。 更新: 我在亚马逊上成功托管了我的rails应用程序 现在我想知道如何在亚马逊上运行seeds.rb。 有没有办法在亚马逊上打开控制台? 在这里我提到了我的问题 – […]

使用错误版本的Ruby部署capistrano

在我使用capistrano部署到新服务器后,我看到: /shared/bundle/ruby/1.9.1/gems/ 我甚至没有在服务器上安装ruby 1.9.1。 如果我运行: ruby -v它返回1.9.3但在所有capisrtano动作中我一直看到1.9.1为什么会这样? 我怎么能阻止它? 谢谢

Capistrano部署 – 资产预编译错误

我正在与Capistrano一起部署到我的新VPS。 在第一次部署(上限部署)之后,一切正常(站点正在运行),但第二次部署在资产上失败:预编译错误。 我正在运行rails 3.2.13,ruby 2.0.0,rvm。 错误: * executing “cd — /home/rails/releases/20140116121250 && RAILS_ENV=production RAILS_GROUPS=assets bundle exec rake assets:precompile” servers: [“IP”] [IP] executing command *** [err :: IP] bash: line 1: 23406 Killed RAILS_ENV=production RAILS_GROUPS=assets bundle exec rake assets:precompile command finished in 84187ms *** [deploy:update_code] rolling back * executing “rm -rf /home/rails/releases/20140116121250; true” servers: [“IP”] [IP] […]

Rails 4资产管道失去供应商资产

我似乎无法弄清楚如何让链轮在vendor/assets找到vendor/assets 。 我一直在通过将我的所有资产添加到app/assets来解决问题,但它变得太杂乱了。 我已阅读文档,并尝试将以下所有行添加到application.rb文件中。 config.assets.paths << "#{Rails.root}/vendor/assets/*" config.assets.paths << "#{Rails.root}/vendor/assets/fonts" config.assets.paths << "#{Rails.root}/vendor/assets/stylesheets" config.assets.precompile << Proc.new { |path| if path =~ /\.(eot|svg|ttf|woff)\z/ true end 它们在本地工作,但是当我将它们推送到服务器时,我的供应商资产都没有。 我正在使用capistrano进行部署,我知道升级存在一些问题。 这可能是问题的根源,但我按照文档来部署(几乎)一切正常。

为什么我在capistrano生成的文件部署中获得Permission denied错误?

我遇到了failed: “sh -c ‘cd /var/www -c’cd failed: “sh -c ‘cd /var/www错误。然后通过在deploy.rb中添加以下内容来修复它… set :default_environment, { ‘PATH’ => “/var/lib/gems/1.9.1/bin:$PATH” } 现在我收到了这个新错误。 ** [out :: ip.address] Rails Error: Unable to access log file. Please ensure that /var/www/releases/20111208152807/log/production.log exists and is chmod 0666. The log level has been raised to WARN and the output directed to STDERR until the […]