【问题标题】:Cap deploy doesn't create share/log folderCap deploy 不创建共享/日志文件夹
【发布时间】:2012-04-12 19:34:44
【问题描述】:

当我运行 cap deploy 时,它抱怨它无法访问日志文件:

Rails 错误:无法访问日志文件。请确保 /var/superduperapp/releases/20120329011558/log/production.log 存在 并且是 chmod 0666。日志级别已提升到 WARN 并且 输出定向到 STDERR,直到问题得到解决。

看来我必须手动创建一个日志文件夹。有没有办法用 Capistrano 做到这一点,这样部署它的人就不必记住每次进行新部署时都创建文件夹?

【问题讨论】:

    标签: ruby-on-rails capistrano


    【解决方案1】:

    这些文件夹应该是 capistrano 在你运行cap deploy:setup 时创建的,你运行了吗?要检查一切是否正常,您可以在它之前运行cap deploy:check

    【讨论】:

      【解决方案2】:

      您可以创建自定义任务来创建此目录并将其作为第一个任务启动:

      task :create_log_share do
        run "mkdir -p #{shared_path}/log"
      end
      before 'deploy:update', :create_log_share
      

      每次部署时都不需要创建这个目录。一次就够了。共享目录永远不会改变。

      【讨论】:

      • 感谢@shingara,这对我有用。现在我只需要弄清楚为什么我的独角兽服务器在终端中没有显示任何东西,除了:`SIGWINCH 因为我们没有被守护程序而被忽略'。嗯..
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-22
      相关资源
      最近更新 更多