2012-07-24 3 views
6

Sinatra 응용 프로그램을 Thin을 통해 데몬으로 시작하는 실행 파일을 만들려고합니다. 내가Thin :: Server # daemonize 즉시 종료합니다.

을 수행 할 때

>> Writing PID to tmp/thin.pid 
>> Exiting! 

서버는 잘 시작 : 나는 스크립트를 실행할 때 다음

#!/usr/bin/env ruby 

require 'thin' 
require 'app.rb' 

server = ::Thin::Server.new('127.0.0.1', 9999, App) 
server.log_file = 'tmp/thin.log' 
server.pid_file = 'tmp/thin.pid' 
server.daemonize 

내가 얻을 로그 출력 : 가 나는시나 앱 얇은 호출이 코드를 사용하고
server.start 

내가 왜 즉시 종료하는지 알 수있는 제안이 있으십니까?

+0

1인가 TMP 폴더를 쓰기 가능? 2. 서버 객체 생성 부분에 App 또는 App.new가 있습니까? – Kashyap

답변

4

daemonize을 사용하면 스크립트가 데몬이되고 실제로 서버가 시작되지는 않습니다. 당신은 여전히 ​​이후 start를 호출해야합니다

server.daemonize 
server.start 

로그 파일 :

>> Writing PID to tmp/thin.pid 
>> Thin web server (v1.4.1 codename Chromeo) 
>> Maximum connections set to 1024 
>> Listening on 127.0.0.1:9999, CTRL+C to stop 
+0

매력처럼 작동합니다. 고마워요! – benzimmer

+0

이것은 상당히 오래된 게시물이지만'server.daemonize'를 호출 한 후 명시 적으로 시작하지 않아도됩니다. – poorva

관련 문제