Когда вы используете rails s <server>
, сервер запускается из команды Rails и знает о среде Rails.
Это позволяет, например, использовать любые функции и флаги, предлагаемые rails server command
.
rails s --help
Usage: rails server [mongrel, thin, etc] [options]
-p, --port=port Runs Rails on the specified port.
Default: 3000
-b, --binding=ip Binds Rails to the specified ip.
Default: 0.0.0.0
-c, --config=file Use custom rackup configuration file
-d, --daemon Make server run as a Daemon.
-u, --debugger Enable ruby-debugging for the server.
-e, --environment=name Specifies the environment to run this server under (test/development/production).
Default: development
-P, --pid=pid Specifies the PID file.
Default: tmp/pids/server.pid
-h, --help Show this help message.
Например, вы можете прикрепить отладчик к сессии, проходящей --debugger
или демоном сервера.
Второе преимущество заключается в том, что вы можете использовать экземпляр Puma
, так как вам нужно будет перечислить драгоценный камень в Gemfile
. Это уже верно, если вы начинаете с bundle exec
, как и вы.
И наоборот, когда вы просто запускаете $ puma
(или $ bundle exec puma
), вы не проходите через систему Rails. Puma
попытается найти стойку загрузочный файл и использовать его (он работает, потому что Rails предоставляет config.ru
сценария в корневом каталоге приложения.
Вообще говоря, нет никакой разницы, если вам не нужно передавать определенные параметры сервер. Мне нравится пума, и я, как правило, использовать его в некоторых проектах, даже когда на производстве мы используем единорог, таким образом, работает $ puma
отдельной команды удобно, потому что мне не нужно, чтобы добавить его в Gemfile
.
Однако , Я бы, вероятно, пошел с $ rails s puma
, если весь мой стек использует Puma
. Это также command suggested in the documentation.
при запуске рельсов s puma файл конфигурации, который у вас есть, не загружается ... это недостаток. Вот быстрый псевдоним для запуска сервера с конфигурационным файлом (config/puma.rb). JUST COPY PASTE echo 'alias start_puma = "bundle exec puma -p 3000 -S ~/puma -C config/puma.rb"' >> ~/.bash_profile && source ~/.bash_profile THEN USE start_puma – blnc