はじめに
現象
いつもどおり自動デプロイしたはずがまったく反映されない
やってみて
EC2インスタンスがおかしいのかなと思って再起動してみたら無事解決。
再起動に必要なコマンドを備忘します。
手順
EC2インスタンスを再起動
AWSコンソールからEC2インスタンスを再起動します。
DBを起動させる
EC2を再起動するとDBが停止状態になるので起動させます。
(私はMariaDBを使用しています)
確認コマンド
ターミナル(EC2)
$ sudo systemctl status mariadb
結果
ターミナル(EC2)
● mariadb.service - MariaDB database server
Loaded: loaded (/usr/lib/systemd/system/mariadb.service; disabled; vendor preset: disabled)
Active: inactive (dead)
死んじゃってるのが確認できます。
DB起動コマンド
ターミナル(EC2)
$ sudo systemctl start mariadb
これで確認するとActiveになっているはずです。
Nginxを起動させる
同じようにNginxも起動させます。
Nginx起動コマンド
ターミナル(EC2)
$ sudo systemctl start nginx
改めて自動デプロイを行う
これが本当に正解なのかわからないところがありますが(1度目の自動デプロイの内容をEC2が読み込めているなら、Unicornの起動だけでいいような気がします)
とりあえず自動デプロイを行えばEC2に反映されますし、Unicornも起動されるのでもう一度コマンドを打ちます。
ターミナル(ローカル)
% bundle exec cap production deploy
これにて一件落着です。
おわりに
本当にこの画面が嫌いです。
✔︎