AAAjaya Agrawallainblog.clearstack.io·Mar 26 · 6 min readThe PORT Trap: Why rails s Silently Drops Your Puma Bind DirectivesHow Puma Reads Its Config Puma's configuration lives in config/puma.rb. When Puma starts directly (via bundle exec puma), it reads this file and applies every directive — port, bind, threads, etc. — e00
AAAjaya Agrawallainblog.clearstack.io·Mar 24 · 2 min readWhy rails s Ignores Your Puma Binds (The Hidden PORT Trap)TL;DR - ENV["PORT"] → treated as user-supplied by Rails - Puma prioritizes user config → calls clear_binds! - All binds in config/puma.rb are ignored - Result: single bind only - Fix: use MY_APP_PORT 00