ruby-on-rails-4 - 导轨 : How to set up db:schema:load for initial deploy with Capistrano

标签 ruby-on-rails-4 capistrano3

我正在尝试使用 Capistrano 3 部署我的 Rails 4 应用。我在运行 db:migrations 时收到错误消息(抱歉,我太草率了)。有没有办法让 Capistrano 使用 db:schema:load 部署应用程序(至少是第一次)?

我的deploy.rb摘录:

namespace :deploy do

  %w[start stop restart].each do |command|
    desc 'Manage Unicorn'
    task command do
      on roles(:app), in: :sequence, wait: 1 do
        execute "/etc/init.d/unicorn_#{fetch(:application)} #{command}"
      end      
    end
  end

我不确定如何覆盖 Capistrano 3 的默认行为。有人可以告诉我如何将其添加到我的脚本中吗?

最佳答案

对于第一次部署,我通常通过登录服务器、cd进入发布目录(此时将包含已部署的代码)来解决它,然后手动运行RAILS_ENV=yourenv bundle exec rake db:setup

关于ruby-on-rails-4 - 导轨 : How to set up db:schema:load for initial deploy with Capistrano,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35821777/

相关文章:

javascript - 通过 link_to Rails 4 将参数传递给 Controller ​​方法

ruby-on-rails - Carrierwave的 "Removing uploaded files"如何实现?

ruby-on-rails - HAML rails form_for 不调用 POST 方法

ruby-on-rails-4 - 使用 Capistrano 3 部署时输出任务名称

ruby - Capistrano 3 权限未在缓存和版本上正确设置

ruby-on-rails - Cloths 中的 NoMethodError#index

javascript - 为什么实际的鼠标点击不起作用,但在 JS 控制台中执行 .click() 却可以?

ruby - 卡皮斯特拉诺 3 : Get server info from role

ruby-on-rails - Capistrano 3 权限被拒绝

deployment - Capistrano 创建任务以更改当前符号链接(symbolic link)