概要
引数やコメント、Ruby スクリプト内で設定することができます
環境
- macOS 11.4
- Ruby 3.0.1p64
- Sinatra 2.1.0
サンプルアプリ
以下のアプリを使ってい起動するポートをいろいろと変更してみます デフォルトだと 9292 ポートで起動します
- bundle exec rackup config.ru
app.rb
require 'sinatra/base'
class WebApp < Sinatra::Application
get '/' do
'ok'
end
end
config.ru
require './app'
run WebApp
引数で指定
起動する際の引数で指定できます
- bundle exec rackup config.ru -p 8080
コメントで指定
現在は非推奨になっているようです 実行すると「Parsing options from the first comment line is deprecated!」が表示されます
#\ -p 1111
require './app'
run WebApp
スクリプト内で指定
run する際に Rack::Handler から run をすることで起動時の引数として指定できます こうすることでスクリプト内の変数を使って起動ポートを指定することができます
require './app'
port = ENV["PORT"] || 1111
Rack::Handler::Thin.run(WebApp, Port: port)
ただこの場合アプリ停止時に「to_app: missing run or map statement (RuntimeError)」が表示されてしまいます
0 件のコメント:
コメントを投稿