LoginSignup
79
108

More than 3 years have passed since last update.

【AWSとか】デプロイ時のエラー出たときに使いそうなコマンド集

Last updated at Posted at 2018-10-07

構成とか

この記事でのインフラ構成はAWS EC2 + Ruby on Rails + nginx + unicorn + capistrano です。その時に使いそうなコマンドをまとめています。
DBはEC2内にMySQLを立てて管理しています。

AWSを使ってデプロイするときにエラーにはまってしまった初学者の私は
logの見かたすら分からなかった。同じようなエラーにハマった時に使ってもらえたら良いですね。

共通

$ ps ax -H    ワーキングプロセス(pid)を確認できる
$ sudo reboot EC2再起動

環境変数関連

vim ~/.bash_profile        環境変数書き込み
source ~/.bash_profile  環境変数適用
printenv               設定されている環境変数を確認

sourceコマンド打ってもなぜか入力内容が反映されていないことがありました。
printenvでちゃんと設定内容を確認するようにしています。

MySQL関連

$ sudo service mysqld status 状態を確認する
$ sudo service mysqld start   起動コマンド
$ mysql -u root -p                     PW入力してMySQLへ接続する

EC2を一度落とすとMySQLは落ちますのでmysql.sockがないというエラーが出ます。
起動させましょう。

unicorn関連

$ ps auxwww | grep unicorn 状態を確認する
$ kill -9 ●●●●● プロセス終了

Appディレクトリで
$ cat log/unicorn.stderr.log ログを見れる
または
$ cd /var/www/app/log
$ less unicorn.staderr.log ログが見れる
$ tail unicorn.staderr.log 最新10行ログが見れる

S3を設定して、
Capistranoで自動デプロイを行っても、なぜかS3に画像が保存されないことがあります。
そんな時はunicornの起動時刻を確認しましょう。
今さっきunicornをリスタートしたのに4時間前のプロセスのままだったりしていることがあります。
そういう場合はkillしてデプロイし直してみると直る。

nginx関連

$ sudo service nginx restart 再起動

本番環境のホームディレクトリで
$ sudo less /var/log/nginx/error.log ログが見れる

capistrano関連

ローカル環境、Appディレクトリで
$ bundle exec cap production deploy デプロイを行う
$ less log/capistrano.log                      ログファイルの内容全て表示
$ tail log/capistrano.log                      最新10行を表示
79
108
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
79
108