Ruby on rails 彪马州档案

Ruby on rails 彪马州档案,ruby-on-rails,ruby,ruby-on-rails-3,puma,Ruby On Rails,Ruby,Ruby On Rails 3,Puma,我正在尝试使用Capistrano部署我的rails应用程序w/puma。在部署结束时,它尝试运行 bundle exec pumactl-S/home/deployer/production/shared/sockets/puma.state restart 哪个失败了w/ undefined method `has_key?' for false:FalseClass. 我只是为puma.state创建了一个空文件。我的问题是这个文件到底是什么,里面应该是什么 Puma有一个状态文件,记

我正在尝试使用Capistrano部署我的rails应用程序w/puma。在部署结束时,它尝试运行

bundle exec pumactl-S/home/deployer/production/shared/sockets/puma.state restart

哪个失败了w/

undefined method `has_key?' for false:FalseClass. 

我只是为
puma.state
创建了一个空文件。我的问题是这个文件到底是什么,里面应该是什么

Puma有一个状态文件,记录进程的PID。如果是第一次部署,则应删除.state文件,并执行以下操作:

cap部署:冷

或者,您可以手动启动puma,方法如下

cappuma:start

这将启动进程并创建有效的状态文件。这是我在capistrano中的puma启动命令:

namespace :puma do

  desc "Start the application"
  task :start, :roles => :app, :except => { :no_release => true } do
    run "cd #{current_path} && RAILS_ENV=#{rails_env} bundle exec puma -t 8:32 -b 'unix://#{shared_path}/sockets/puma.sock' -S #{shared_path}/sockets/puma.state --control 'unix://#{shared_path}/sockets/pumactl.sock' >> #{shared_path}/log/puma-#{rails_env}.log 2>&1 &", :pty => false
  end
  after "deploy:start", "puma:start"
end