0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

AWSでデプロイして、一度停止させたものをpumaで再起動するときのエラー【Rails puma】

Posted at

RailsのアプリをEC2で作成しました。
その後、EC2、RDS、puma、nginxなどを停止させていましたが、再起動させようとしてデータベースコネクションエラーが出てしまったときの解決方法の備忘録です。

AWSにIAMユーザーでログイン

EC2インスタンスを起動
ElasticIPアドレスが関連付ける
RDSを起動
Route53で独自ドメインのAレコードをElasticIPを指定

ターミナルでSSH接続

$ ssh -i "◯◯◯.pem" ec2-user@◯◯.◯◯.◯◯.◯◯◯

nginx起動

$ sudo nginx

puma起動

$ bundle exec pumactl start

ブラウザでドメインを入力して起動を確認します。

ここでエラーが発生しました。

ActiveRecord::DatabaseConnectionError
There is an issue connecting to your database with your username/password, username: root.
Please check your database configuration to ensure the username/password are valid.

ユーザーネームとパスワードの組み合わせが正しくないのでデータベースに接続できないようです。

Pumaの起動時にdevelopment環境で起動しているような文言が合ったのが気になりました。

Puma starting in single mode...
*  Environment: development

起動前にproduction環境にしてあげる必要があるようです。

export RAILS_ENV=production

上記を実行

[ec2-user@ip-10-0-10-11 アプリ名]$ export RAILS_ENV=production
[ec2-user@ip-10-0-10-11 アプリ名]$ bundle exec pumactl start
*  Environment: production

production環境になりました。

ブラウザでドメインを入力して起動を確認します。
無事に起動が確認できました。
今回のエラーはproduction環境に設定しないで起動をしようとしたのが原因だったようです。

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?