LoginSignup
0
0

More than 3 years have passed since last update.

AWS EC2内、Railsアプリケーションの起動、停止コマンド 深堀

Last updated at Posted at 2020-07-22
環境

言語:Rails 5.2.4.2
サーバー:AWS EC2
ターミナル:TeraTerm

結論

サーバー起動

プロジェクトのルートディレクトリにて

rails s -e production

サーバー停止

プロジェクトのルートディレクトリにて

kill $(cat tmp/pids/puma.pid)

解説

サーバー起動
rails s -e production

・-e は -environmentの略
 production環境でサーバーを起動しますよという意味になる。
・Gemfile内にて、group :production do内のGemを読み込んで実行する。
・-environmentを指定しない場合、デフォルトでdevelopmentになっている。
 その為、Gemfile内group :development do中のGemが読み込まれ、本番環境ではエラーを起こす。

サーバー停止
kill $(cat tmp/pids/puma.pid)

・Railsアプリケーション起動中(サーバを立てている状態)、tmp/pids/下にpuma.pidというファイルが作成される。(Railsアプリケーション停止中は存在しない。)
・puma.pidには、起動中RailsアプリケーションのプロセスIDが記入されている。(ex. 1234)
・catコマンドを実行すると、指定したファイル内の内容(プロセスID)を出力する。
 (実際にcat tmp/pids/puma.pidで確認できる。→「1234」が出力される)
・$kill プロセスID コマンドで、指定したプロセスIDのプロセスを終了する。
・つまり、上記コマンドを入力すると
 $kill 1234
 となり、プロセスID:1234(起動中Railsアプリケーション)を終了することができる。

最後に

個人で調査した結果ですので、間違っておりましたら申し訳ございません。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0