【问题标题】:error on running cap deploy:cold运行 cap deploy 时出错:cold
【发布时间】:2013-03-07 14:10:54
【问题描述】:

当我在部署到亚马逊 ec2 时使用橡胶运行 cap [deploy:cold] 时,我会在控制台上无休止地打印出以下内容。
请帮忙出出主意。我在这里关注了 railscast 链接http://railscasts.com/episodes/347-rubber-and-amazon-ec2

servers: ["app01.foo.com"]
  [app01.foo.com] executing command
** [out :: app01.foo.com] .
** [out :: app01.foo.com] .
** [out :: app01.foo.com] .
** [out :: app01.foo.com] .
** [out :: app01.foo.com] .
** [out :: app01.foo.com] .
** [out :: app01.foo.com] .

【问题讨论】:

    标签: ruby-on-rails capistrano rubber


    【解决方案1】:

    这是一个设置问题。开箱即用的橡胶对我们不起作用。您必须进行一些修改。您遇到的问题的主要解决方法是在 mysql 配置中:config/rubber/deploy_mysql.rb

    @@ -40,7 +40,7 @@
                 pass = "identified by '#{env.db_pass}'" if env.db_pass
                 rubber.sudo_script "create_master_db", <<-ENDSCRIPT
                 mysql -u root -e "create database #{env.db_name};"
    -              mysql -u root -e "delete from mysql.user where user='' and host='localhost';"
    +              mysql -u root -e "delete from mysql.user where user='';"
               mysql -u root -e "grant all on *.* to '#{env.db_user}'@'%' #{pass};"
               mysql -u root -e "grant select on *.* to '#{env.db_slave_user}'@'%' #{pass};"
               mysql -u root -e "grant replication slave on *.* to '#{env.db_replicator_user}'@'%' #{pass};"
    

    还有将 :asset 角色设置为 :app ,这让我们长期受阻。这发生在 deploy.rb 中,并且根据上面的 railscast。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-05-15
      • 2022-11-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-22
      • 2020-06-15
      相关资源
      最近更新 更多