rails sでRailsサーバーが起動するまでに何が起きているのかを紐解くことでRailsとは何なのかを理解していきたい。今回読んでいくソースコードのコミットは2d9b9fb5b5f6015e66d3ad5cb96bc1ba117fd626だ。 TL;DR bin/rails sがユーザーによって実行される。 Gemfileで管理されるrubygemをrequireする。 Rails::CommandsTasks#serverを実行する。 config/application.rbをrequireする。 Railsを構成する各rubygemのrailtieをrequireする。 各rubygemのinitializerが登録される。 config.ruが実行される。 登録されたinitializerが実行される。 RailsアプリケーションがRackアプリケーションとして起動する。 コマ