Back

ruby - sinatra 与 thin 的结合使用, 部署sinatra

发布时间: 2019-03-28 07:41:00

参考: 官方文档.http://sinatrarb.com/intro.html

sinatra有两种方式: 

1. classic(经典的一个 app.rb , 部署的时候直接 ruby app.rb) 

2. modular   ,可以同时存在多个文件。

我最近的一个项目使用了经典的sinatra. 部署的时候遇到问题: 需要同时部署多个port

所以,根据官方文档, classic sinatra 的config.ru 文件如下:

require File.expand_path('app', File.dirname(__FILE__))
run Sinatra::Application

然后,搭配一个 thin.yml

chdir: /workspace/matcher.coiex.io
environment: production
#environment: development
address: 0.0.0.0
port: 8801
timeout: 30
log: log/thin.log
pid: tmp/pids/thin.pid
max_conns: 1024
max_persistent_conns: 100
require: []
wait: 30
servers: 4
daemonize: true

启动:$ bundle exec thin start -C config/thin.yml  

就可以了.

Back