Ole*_*dko 5 linux capistrano ruby-on-rails start-stop-daemon puma
我使用 capistrano 部署了项目,但是 puma 在服务器重新启动后无法启动。
我应该做 ->生产 puma 帽子:每次都开始
我尝试过:
/etc/init.d/myscript
#!/bin/sh
/etc/init.d/puma_start.sh
Run Code Online (Sandbox Code Playgroud)
puma_start.sh
#!/bin/bash
puma -C /root/project/shared/puma.rb
Run Code Online (Sandbox Code Playgroud)
但是,我有错误
/usr/local/rvm/rubies/ruby-2.3.3/lib/ruby/site_ruby/2.3.0/rubygems.rb:270:in `find_spec_for_exe': can't find gem puma (>= 0.a) (Gem::GemNotFoundException)
from /usr/local/rvm/rubies/ruby-2.3.3/lib/ruby/site_ruby/2.3.0/rubygems.rb:298:in `activate_bin_path'
from /usr/local/rvm/gems/ruby-2.3.3@project/bin/puma:22:in `<main>'
from /usr/local/rvm/gems/ruby-2.3.3@project/bin/ruby_executable_hooks:15:in `eval'
from /usr/local/rvm/gems/ruby-2.3.3@project/bin/ruby_executable_hooks:15:in `<main>'
Run Code Online (Sandbox Code Playgroud)
如果我放入控制台,root@host:~# puma -C /root/project/shared/puma.rb它就可以工作,一切都很好。
我想我没有通往 gem puma 的正确路径
服务器重启后如何进行 puma 自动启动
谢谢
我发现这个http://codepany.com/blog/rails-5-puma-capistrano-nginx-jungle-upstart/
\n\n这对我有帮助->
\n\ncd ~\n$ wget https://raw.githubusercontent.com/puma/puma/master/tools/jungle/upstart/puma-manager.conf\n$ wget https://raw.githubusercontent.com/puma/puma/master/tools/jungle/upstart/puma.conf\nRun Code Online (Sandbox Code Playgroud)\n\n打开下载的 puma.conf 文件并为 setuid 和 setguid 设置您的 system\xe2\x80\x99s 用户帐户。(在我们的例子中,我们使用root帐户,但它\xe2\x80\x99s建议使用权限较低的帐户):
\n\nvim puma.conf\n\nsetuid root\nsetgid root\nRun Code Online (Sandbox Code Playgroud)\n\n将下载的 upstart 文件移至 /etc/init 并创建另一个 puma.conf
\n\n$ sudo cp puma.conf puma-manager.conf /etc/init\n$ sudo touch /etc/puma.conf\nRun Code Online (Sandbox Code Playgroud)\n\n打开 /etc/puma.conf 并添加应用程序的路径:
\n\n/root/name_of_your_app/current\nRun Code Online (Sandbox Code Playgroud)\n\n打开 /etc/init/puma.conf ,并找到类似的内容
\n\nexec bundle exec puma -C /root/project/shared/puma.rb\nRun Code Online (Sandbox Code Playgroud)\n\n并替换文件 puma.rb 的路径
\n\n谢谢
\n