Порт 5000
February 13, 2017
Запустил тут рейлс сервер в форемане и удивился, что сервер
запускается на порту 5000 вместо привычного 3000. Довольно быстро, понял, что фореман
выдает порты своим приложениям, переопределяя переменную окружения PORT
. То есть такой прокфайл:
# Procfile
web: rails s
запустит приложение на порту 5000, а такой:
web: PORT=3000 rails s
вернет сервер на привычные 3000.
В этой всей истории меня смутило, почему я раньше эту штуку не видел. Поковырявшишь в истории
комитов, нашел нужный 306c14c4113, поддержка PORT
была добавлена
только в рейлс 5, поэтому и не видел. Душевное равновесие восстановлено.
PS. Переменная PORT
стандартная для хероку, но пока рейлс не обращал внимания на эту переменную, вопрос решался магией
билдпаков rails4.rb.