ich den Port 3000 in meinem application.yml gesetzt (figaro env Variablen Verwaltung) rails s
Port 3000 verwendet, aber wenn ich laufe foreman start
(wie von Heroku empfohlen) ich erhalte die folgende AusgabeForeman/Puma nutzt nicht den angegeben Port in dev env
14:53:23 web.1 | started with pid 24425
14:53:23 web.1 | [24425] Puma starting in cluster mode...
14:53:23 web.1 | [24425] * Version 2.11.1 (ruby 2.2.0-p0), codename: Intrepid Squirrel
14:53:23 web.1 | [24425] * Min threads: 5, max threads: 5
14:53:23 web.1 | [24425] * Environment: development
14:53:23 web.1 | [24425] * Process workers: 2
14:53:23 web.1 | [24425] * Preloading application
14:53:24 web.1 | WARNING: Skipping key "PORT". Already set in ENV.
14:53:25 web.1 | [24425] * Listening on tcp://0.0.0.0:5000
14:53:25 web.1 | [24425] Use Ctrl-C to stop
14:53:25 web.1 | [24425] - Worker 0 (pid: 24426) booted, phase: 0
14:53:25 web.1 | [24425] - Worker 1 (pid: 24427) booted, phase: 0
procfile
web: bundle exec puma -C config/puma.rb
config/puma.rb
workers Integer(ENV['WEB_CONCURRENCY'] || 2)
threads_count = Integer(ENV['MAX_THREADS'] || 5)
threads threads_count, threads_count
preload_app!
rackup DefaultRackup
port ENV['PORT'] || 3000
environment ENV['RACK_ENV'] || 'development'
on_worker_boot do
ActiveRecord::Base.establish_connection
end
config/application.yml
PORT: "3000"
- Rails 4.2.0
- Foreman 0.78.0
- Rubin 2.2.0p0
- Puma 2.11.1
Ist Ihre Frage, warum Ihre Konfiguration nicht funktioniert, und wie hat 'Vorarbeiter Starten' standardmäßig auf Port 3000, oder wie der Lage sein,' mit Port 3000 foreman' zu benutzen? Wenn es das letztere ist, können Sie es einfach inline ausführen, indem Sie '-P P $ PORT 'zu Ihrem Procfile hinzufügen, so dass es ist: web: bundle exec puma -p $ PORT-config/puma.rb' Dann können Sie verwenden: 'Vorarbeiter Start -p 3000' – Sid
Letzteres sollte mein Problem lösen, aber das erste ist meine eigentliche Frage, warum nicht Vorarbeiter Port 3000 verwenden? – Voska
Ich habe auch versucht, '-p $ PORT' inline hinzuzufügen, aber das hat nicht funktioniert, es war immer noch Port 5000, 'Foreman Start -p 3000 'gearbeitet, aber wie mache ich das ohne die Befehlszeilenoption? – Voska