Tag: capistrano

Capistrano无法部署到远程服务器

解 解决方案是将以下内容添加到production.rb的顶部: $:.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 :rvm_ruby_string, ‘1.9.2@rails31dataserver’ # Or whatever env you want it to run in. set :rvm_bin_path, ‘/usr/local/rvm/bin’ 我之前缺少的部分是set :rvm_bin_path, ‘/usr/local/rvm/bin’因为我之前从未在Capistrano部署中使用过该配置设置,而且我做了一些。 哦,好吧,一天都工作。 信用转到irc.freenode.net上#rvm频道的tonyflint! 原帖 克利夫说 我正在运行RVM的系统安装 我正在通过Capistrano部署 我目前傻眼了。 基本上发生的事情是我正在尝试通过Capistrano进行部署,而且它很难,很难。 这是我的deploy.rb和production.rb文件的pastie(我正在做一个多阶段环境并省略staging.rb文件,因为它工作正常)。 http://pastie.org/2523675 以下是cap production deploy:setup的输出cap production deploy:setup : […]

capistrano错误:… / current:没有这样的文件或目录

我正在尝试使用capistrano部署,但是当我进行封顶部署时:更新它不是创建/当前文件夹,这是错误,任何想法? executing “cd /home/adamtodd/apps/homebase/current && bundle exec rake RAILS_ENV=production RAILS_GROUPS=assets assets:precompile –trace” servers: [“xx.xxx.xx.xxx”] [xx.xxx.xx.xxx] executing command ** [out :: xx.xxx.xx.xxx] bash: line 0: cd: /home/adamtodd/apps/homebase/current: No such file or directory

Rails Capistrano 3 – 如何将production.log文件共享到Capistrano的共享文件夹中?

我正在使用Capistrano 3与我的Rails应用程序进行部署。 问题是每次我将我的应用程序部署到服务器时都会重置./log/production.log文件。 我听说可以将production.log文件放入共享文件夹并在每个部署中附加。 我认为这是由Capistrano默认制作但显然不适合我:( 有什么想法吗? 谢谢!

如何在capistrano部署中管理捆绑的gem?

目前,我刚刚运行以下内容: 在’deploy:update_code’之后,’deploy:bundle’ namespace :deploy do task :bundle do run “cd #{release_path} && bundle install –deployment –without development test staging” end end 现在这个工作正常,但捆绑商最终每次都将所有gem安装到vendor/gems 。 虽然我理解将gems隔离到每个版本的优点(与使用共享文件夹相反,哪些(?)可能导致回滚时出现错误等),当然有一种更好的方法可以做到这一点,而不是部署和节省磁盘空间的时间很长。

在ec2上托管导轨

我想在亚马逊ec2上部署导轨。 我看过poolparty和ec2onrails,但似乎都不再维护了。 人们用这个来做什么? 这都是自制的木偶和卡皮斯特拉诺还是有一个项目可以让我走?

capistrano顺序重启

我将capistrano配置为跨三个物理服务器进行部署。 我想配置重启任务以顺序转到每个服务器并重新启动应用程序,而不是一次性转到所有服务器的默认方式。 这是当前的部署任务: namespace :deploy do task :start, :roles => :app, :except => { :no_release => true } do run “cd #{current_path} && bundle exec unicorn_rails -c #{current_path}/config/unicorn.rb -E #{rails_env} -D” end task :stop, :roles => :app, :except => { :no_release => true } do run “kill `cat #{current_path}/tmp/pids/unicorn.pid`” end task :restart, :roles => :app, […]

如何告诉Bundler使用全系统安装的gems(生产部署)?

当使用Capistrano部署Rails应用程序时,我希望Bundler只在已经找到全系统安装的gems的情况下才能将gem安装到shared/bundles目录。 我该怎么做? 例如,如果我已经在系统上安装了pg gem v 0.14 ,我希望Bundler使用它,而不是在我的应用程序的shared/bundles目录中构建和安装新的。 我正在使用Ubuntu Server,并为多个用户安装了RVM。

Capistrano bitbucket – 权限被拒绝(publickey)

我正在尝试使用Capistrano将我的应用程序部署到我的DigitalOcean服务器上。 这不是我第一次使用Capistrano在DigitalOcean上配置RoR服务器,这就是为什么我感到困惑; 我的工作流程没有改变任何内容。 这是我的Capistrano配置文件: require ‘bundler/capistrano’ require ‘rvm/capistrano’ set :application, “foobar” set :repository, “git@bitbucket.org:sergiotapia/foobar.git” set :ping_url, “http://192.168.1.1/” set :scm, :git set :scm_verbose, true default_run_options[:pty] = true set :user, “sergiotapia” # The user on the VPS server. set :password, “hunter2” set :use_sudo, false set :deploy_to, “/home/sergiotapia/www/#{application}” set :deploy_via, :remote_cache set :keep_releases, 1 set :rails_env, “production” set […]

在使用capistrano和svn部署rails时,在哪里放置app-config-files

我有两个配置文件 /app/config/database.yml 和 /app/config/userconfig.yml 我不想将数据库凭据和userconfig放在svn-repository中,所以我签入了database.yml.dist和userconfig.yml.dist。 在第一次部署应用程序时,在共享目录中获取dist文件的copys的最佳方法是什么? 对于以后的部署,我将从/ app / current / config链接到它们

延迟工作不会开始使用Capistrano

我无法使用capistrano配方启动延迟的工作流程。 这是我得到的错误。 /usr/local/lib/ruby/gems/1.9.1/gems/delayed_job-2.1.1/lib/delayed/command.rb:62:in `mkdir’: File exists – /my_app/server/releases/20101120001612/tmp/pids (Errno::EEXIST) 这是capistrano代码(注意:我已经尝试了两个启动/重启命令) after “deploy:restart”, “delayed_job:start” task :start, :roles => :app do run “cd #{current_path}; RAILS_ENV=#{rails_env} script/delayed_job -n 2 start” end 部署日志中的更多细节错误 – executing command [err :: my_server] /usr/local/lib/ruby/gems/1.9.1/gems/delayed_job-2.1.1/lib/delayed/command.rb:62:in `mkdir’: File exists – /my_app/server/releases/20101120001612/tmp/pids (Errno::EEXIST) [err :: my_server] from /usr/local/lib/ruby/gems/1.9.1/gems/delayed_job-2.1.1/lib/delayed/command.rb:62:in `daemonize’ [err :: my_server] from script/delayed_job:5:in `’ command […]