Sinatra с Foreman не запускается должным образом

#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
  

Чего я не понимаю?