rackup sinatra를 시스템d로 설정하고 고장날 때 자동으로 다시 시작하는 방법

1057 단어 sinatrasystemd
sinatra 애플리케이션
#acc-server.rb
require 'sinatra/base'

class MyApp < Sinatra::Base
  set :bind, '0.0.0.0'
  set :port, 3333

  get '/' do
    "Hello #{params[:name]}"
  end
  run! if app_file == $0
end
조립하다
require './acc-server'
run MyApp
셸 스크립트server.sh
#!/bin/bash
cd /root/server && /usr/local/bin/rackup -p 3333 -P /root/server/server.pid </dev/null &>>/root/server/log
시스템 구성/etc/systemd/system/pserver.service
[Unit]
Description=Prosody http server

[Service]
ExecStart=/root/server/server.sh
Restart=on-failure

[Install]
WantedBy=multi-user.target
서비스 시작
systemctl start pserver.service 
그리고 시작할 때 사용하기
systemctl enable pserver.service 

좋은 웹페이지 즐겨찾기