#ruby #sinatra #foreman
#ruby #sinatra #форман
Вопрос:
В разделе устранение неполадок я сократил проблему до самого простого возможного сценария. Вот мой код.
# dummyProcfile
web: bundle exec rackup dummyconfig.ru -p $PORT
# dummyconfig.ru
require File.expand_path('dummyapp', File.dirname(__FILE__))
run DummyApp
# dummyapp.rb
require 'sinatra/base'
class DummyApp < Sinatra::Base
get "/" do
"hello world"
end
end
foreman start -f dummyProcfile
10:49:00 web.1 | started with pid 9211
10:49:00 web.1 | Puma starting in single mode...
10:49:00 web.1 | * Version 3.12.0 (ruby 2.6.0-p0), codename: Llamas in Pajamas
10:49:00 web.1 | * Min threads: 0, max threads: 16
10:49:00 web.1 | * Environment: production
10:49:00 web.1 | * Listening on tcp://0.0.0.0:5000
10:49:00 web.1 | Use Ctrl-C to stop
Если я использую браузер для открытия http://0.0.0.0:5000 в окне браузера выводится сообщение «файл не найден». Если я запускаю приложение с помощью rackup, оно работает так, как ожидалось:
rackup dummyconfig.ru
Puma starting in single mode...
* Version 3.12.0 (ruby 2.6.0-p0), codename: Llamas in Pajamas
* Min threads: 0, max threads: 16
* Environment: development
* Listening on tcp://localhost:9292
Use Ctrl-C to stop
Чего я не понимаю?