実現したいこと
bundle exec unicorn_rails -c /var/www/rails/アプリ名/config/unicorn.conf.rb -D -E production
と、インターネット上に表示されている状態から脱出したいです。
Elastic IPでも、取得したドメインでもRailsアプリが開かなくなってしまいました。
前提
- EC2でインスタンスを作成し、アプリはAWSへデプロイ済みです。
- Route53でホストネームとレコードは作成済み(不安はあるけど)
- 任意のドメインも取得してネームサーバーは変更済みです。
- 下記記事を参照しています。
EC2にログインし、nginxファイルのserver_nameを、
Elastic IPから取得したドメインに変更完了しました。
【画像付きで丁寧に解説】AWS(EC2)にRailsアプリをイチから上げる方法【その5〜ドメイン設定編〜】
発生している問題
sudo vi /etc/nginx/conf.d/<アプリ名>.conf
サーバー環境 server { listen 80; client_max_body_size 4G; server_name www.bread-love.xyz; #取得したドメイン名に変更
サーバーネームを変更し、その後、下記コマンドを順に実行しました。
nginxの再起動 ①sudo service nginx restart unicornの起動チェック ②ps -ef | grep unicorn | grep -v grep unicornの再起動 ③bundle exec unicorn_rails -c /var/www/rails/PanLove/config/unicorn.conf.rb -D -E production
結果、下記のエラーが発生しました。
bundler: failed to load command: unicorn_rails (/var/www/PanLove/vendor/bundle/ruby/2.6.0/bin/unicorn_rails) Errno::ENOENT: No such file or directory @ rb_sysopen - /var/www/rails/PanLove/config/unicorn.conf.rb /var/www/PanLove/vendor/bundle/ruby/2.6.0/gems/unicorn-5.4.1/lib/unicorn/configurator.rb:84:in `read' /var/www/PanLove/vendor/bundle/ruby/2.6.0/gems/unicorn-5.4.1/lib/unicorn/configurator.rb:84:in `reload' /var/www/PanLove/vendor/bundle/ruby/2.6.0/gems/unicorn-5.4.1/lib/unicorn/configurator.rb:77:in `initialize' /var/www/PanLove/vendor/bundle/ruby/2.6.0/gems/unicorn-5.4.1/lib/unicorn/http_server.rb:77:in `new' /var/www/PanLove/vendor/bundle/ruby/2.6.0/gems/unicorn-5.4.1/lib/unicorn/http_server.rb:77:in `initialize' /var/www/PanLove/vendor/bundle/ruby/2.6.0/gems/unicorn-5.4.1/bin/unicorn_rails:209:in `new' /var/www/PanLove/vendor/bundle/ruby/2.6.0/gems/unicorn-5.4.1/bin/unicorn_rails:209:in `<top (required)>' /var/www/PanLove/vendor/bundle/ruby/2.6.0/bin/unicorn_rails:23:in `load' /var/www/PanLove/vendor/bundle/ruby/2.6.0/bin/unicorn_rails:23:in `<top (required)>' master failed to start, check stderr log for details
下記はコマンドの入力履歴です。
[ec2-user@ip-172-31-45-213 PanLove]$ cd [ec2-user@ip-172-31-45-213 ~]$ cd /etc/nginx/conf.d [ec2-user@ip-172-31-45-213 conf.d]$ ls PanLove.conf breadlove.conf rails.conf [ec2-user@ip-172-31-45-213 conf.d]$ sudo vi /etc/nginx/conf.d/rails.conf [ec2-user@ip-172-31-45-213 conf.d]$ cd [ec2-user@ip-172-31-45-213 ~]$ cd /var/www/PanLove [ec2-user@ip-172-31-45-213 PanLove]$ ls Capfile app current package.json revisions.log tmp Gemfile babel.config.js db postcss.config.js shared vendor Gemfile.lock bin lib public spec yarn.lock README.md config log releases storage Rakefile config.ru node_modules repo test [ec2-user@ip-172-31-45-213 PanLove]$ sudo service nginx restart Redirecting to /bin/systemctl restart nginx.service [ec2-user@ip-172-31-45-213 PanLove]$ ps -ef | grep unicorn | grep -v grep [ec2-user@ip-172-31-45-213 PanLove]$ bundle exec unicorn_rails -c /var/www/rails/PanLove/config/unicorn.conf.rb -D -E production bundler: failed to load command: unicorn_rails (/var/www/PanLove/vendor/bundle/ruby/2.6.0/bin/unicorn_rails) Errno::ENOENT: No such file or directory @ rb_sysopen - /var/www/rails/PanLove/config/unicorn.conf.rb /var/www/PanLove/vendor/bundle/ruby/2.6.0/gems/unicorn-5.4.1/lib/unicorn/configurator.rb:84:in `read' /var/www/PanLove/vendor/bundle/ruby/2.6.0/gems/unicorn-5.4.1/lib/unicorn/configurator.rb:84:in `reload' /var/www/PanLove/vendor/bundle/ruby/2.6.0/gems/unicorn-5.4.1/lib/unicorn/configurator.rb:77:in `initialize' /var/www/PanLove/vendor/bundle/ruby/2.6.0/gems/unicorn-5.4.1/lib/unicorn/http_server.rb:77:in `new' /var/www/PanLove/vendor/bundle/ruby/2.6.0/gems/unicorn-5.4.1/lib/unicorn/http_server.rb:77:in `initialize' /var/www/PanLove/vendor/bundle/ruby/2.6.0/gems/unicorn-5.4.1/bin/unicorn_rails:209:in `new' /var/www/PanLove/vendor/bundle/ruby/2.6.0/gems/unicorn-5.4.1/bin/unicorn_rails:209:in `<top (required)>' /var/www/PanLove/vendor/bundle/ruby/2.6.0/bin/unicorn_rails:23:in `load' /var/www/PanLove/vendor/bundle/ruby/2.6.0/bin/unicorn_rails:23:in `<top (required)>' master failed to start, check stderr log for details [ec2-user@ip-172-31-45-213 PanLove]$
nginxのサーバーネームを変えるだけのはずが複合的なエラーになってしまい、原因を探しているのですが掴めていません。Route53内のホストネームのレコードの設定を間違えてしまったのかと考えましたが、原因が判然としていません。
実際のElastic IPと、ターミナルに表示されているec2-user@ip-172-31-45-213が異なっているのが原因なのか思案中です。
自力でやろうとしていますが、明確な回答にたどりつけていません。
お知恵をお借りしたいです。よろしくお願いいたします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。