foreman ; gem

Rails で、WEBRick でも、thin でも、「同じプロセス上でサーバーを 2 つ以上起動すること」は愚直にできない

Terminator などで画面上の細工はできるが、GUI に限った話

gem を使う(多様な gem があって驚嘆の限り)


Gemfile

$ gem 'foreman'

RAILS_ROOT/Procfile

ファイル名は Procfile で規約されている

web: thin start -p 3000
ssl: thin start -p 3001 --ssl --ssl-verify --ssl-key-file ~/.ssl/server.key --ssl-cert-file ~/.ssl/server.crt

Run HTTP and HTTPS server at RAILS_ROOT

$ foreman check
valid procfile detected (web, ssl) # valid になることを確認

$ foreman start
23:59:26 web.1  | started with pid 8725
23:59:26 ssl.1  | started with pid 8727
23:59:28 ssl.1  | Using rack adapter
23:59:28 web.1  | Using rack adapter
23:59:29 ssl.1  | Thin web server (v1.6.1 codename Death Proof)
23:59:29 ssl.1  | Maximum connections set to 1024
23:59:29 ssl.1  | Listening on 0.0.0.0:3001, CTRL+C to stop
23:59:29 web.1  | Thin web server (v1.6.1 codename Death Proof)
23:59:29 web.1  | Maximum connections set to 1024
23:59:29 web.1  | Listening on 0.0.0.0:3000, CTRL+C to stop

情報元 # thanks

ruby on rails - Using Thin Web Server with HTTP and HTTPS - Stack Overflow