質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.49%
Ruby on Rails 6

Ruby on Rails 6は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

nginx

nginixは軽量で高性能なwebサーバーの1つです。BSD-likeライセンスのもとリリースされており、あわせてHTTPサーバ、リバースプロキシ、メールプロキシの機能も備えています。MacOSX、Windows、Linux、上で動作します。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

Q&A

解決済

1回答

1176閲覧

AWSで構築した本番環境でのRegionErrorの解決方法を教えて下さい

nozomi1234

総合スコア10

Ruby on Rails 6

Ruby on Rails 6は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

nginx

nginixは軽量で高性能なwebサーバーの1つです。BSD-likeライセンスのもとリリースされており、あわせてHTTPサーバ、リバースプロキシ、メールプロキシの機能も備えています。MacOSX、Windows、Linux、上で動作します。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

0グッド

0クリップ

投稿2022/06/14 04:49

編集2022/06/14 05:04

エラーメッセージ

No region was provided. Configure the :region option or export the region name to ENV['AWS_REGION'] (Aws::Errors::MissingRegionError)

error.log

1[error] 29535#29535: *24 connect() to unix:///home/user名/アプリケーション名/tmp/sockets/puma.sock failed (111: Connection refused) while connecting to upstream, client: 178.73.215.171, server: アプリケーションurl request: "GET / HTTP/1.0", upstream: "http://unix:///home/user名/アプリケーション名/tmp/sockets/puma.sock:/"

状況

本番環境でローカルをpullし、起動させるとページには”502 Bad Gateway”表記、
ターミナルには上記のエラーメッセージが表示されて起動できない状態です。

試したこと

リージョン関連のネットワークエラーと考え、.envファイルとリージョンの確認を行いましたが
.nevファイルにはAWS_REGION=us-east-1を記載して読み込めるようにしており、
EC2のリージョンは間違いなくバージニア北部に作ってあります。

refile

1require 'refile/s3' 2aws = { 3 access_key_id: ENV['AWS_ACCESS_KEY_ID'], 4 secret_access_key: ENV['AWS_SECRET_ACCESS_KEY'], 5 region: ENV['AWS_REGION'], 6 bucket: ENV['AWS_S3_BUCKET_NAME'] 7} 8Refile.cache = Refile::S3.new(prefix: 'cache', **aws) 9Refile.store = Refile::S3.new(prefix: 'store', **aws)

バージョン

OS:Linux(CentOS)
nginx/1.20.0
IDE:Cloud9
Rails 6.1.5

ご助言を頂きたいこと

上記では情報が不足していると思いますが、
エラーの検討もつかず、どこの情報を記載して良いのかすら分かりません。
ここを確認した方がいい や、ここの情報がほしいなど御座いましたら
教えていただけますでしょうか。
よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yu_1985

2022/06/14 07:13

エラーメッセージとエラーログの内容の相関関係がわからないのですが、そのエラーログは確かに該当のエラーが発生したときのものなのでしょうか。 また、リージョンの設定が足りないというのは本当にそのgemだけの設定でしょうか。 またS3バケットの配置先リージョンはどうなってますか?
nozomi1234

2022/06/14 10:26

ありがとうございます。 本番環境(EC2)でアプリを起動しようとした際にターミナルにエラーメッセージが表示されます。 その後にエラーログの確認コマンドを打つと、上記のエラーログが表示されました。 EC2,S3以外でリージョンの設定が異なっているということでしょうか。 S3のリージョン設定は同様にバージニア北部us-east-1になっております。 情報が少なく申し訳ございません、よろしくお願いいたします。
yu_1985

2022/06/15 01:01

エラーログの内容がエラー発生時のものと一致するのならソケットファイルを読み込めてないようにも思えますが…。 試しにリージョンの箇所を直書きしてみたらどうなりますかね。 また、AWS上で使用するならアクセスキーではなくIAMロールで権限を渡すことを推奨します。
nozomi1234

2022/06/15 03:29

ソケットファイルが読み込めていない、リージョンを記載しているenvファイルが読み込めていない、ということでしょうか。 書き直しも含め試してみます。 IAMロールで権限管理をした方が安全ということですね。 アドバイスまで頂き、ありがとうございます。
guest

回答1

0

自己解決

ご助言を下さった方、ありがとうございました。
リージョンを記載してあるenvファイルが読み込めていなかったことが原因でした。
無事解決できました、ありがとうございました。

投稿2022/06/15 03:39

nozomi1234

総合スコア10

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.49%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問