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

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

新規登録して質問してみよう
ただいま回答率
85.50%
Amazon RDS

Amazon RDSは、米アマゾン社が提供しているRDBMSサービス。クラウド上でのリレーショナルデータベースの構築および運用が可能です。MySQL/PostgreSQL/Oracle/SQL Serverのインストールを容易にすることができます。

Ruby on Rails 6

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

nginx

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

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

Amazon EC2

Amazon EC2は“Amazon Elastic Compute Cloud”の略称です。Amazon Web Services(AWS)の一部であり、仮想化されたWebサーバーのコンピュータリソースをレンタルできるサービスです。

Q&A

解決済

1回答

2229閲覧

502 Bad Gatewayが解決できない

komati88

総合スコア6

Amazon RDS

Amazon RDSは、米アマゾン社が提供しているRDBMSサービス。クラウド上でのリレーショナルデータベースの構築および運用が可能です。MySQL/PostgreSQL/Oracle/SQL Serverのインストールを容易にすることができます。

Ruby on Rails 6

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

nginx

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

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

Amazon EC2

Amazon EC2は“Amazon Elastic Compute Cloud”の略称です。Amazon Web Services(AWS)の一部であり、仮想化されたWebサーバーのコンピュータリソースをレンタルできるサービスです。

0グッド

0クリップ

投稿2021/07/05 07:27

前提・実現したいこと

EC2にデプロイしたのですが、502 Bad Gatewayと表示される。
nginxのエラーログを下記に記載します。

発生している問題・エラーメッセージ

connect() to unix:///var/www/rails/myapp/tmp/sockets/puma.sock failed (2: No such file or directory) while connecting to upstream

docker-compose upした時の ログ

Attaching to myapp_app_1, myapp_web_1 app_1 | Puma starting in single mode... app_1 | * Puma version: 5.3.1 (ruby 2.7.1-p83) ("Sweetnighter") app_1 | * Min threads: 5 app_1 | * Max threads: 5 app_1 | * Environment: production app_1 | * PID: 1 app_1 | * Listening on unix:///myapp/tmp/sockets/puma.sock app_1 | Use Ctrl-C to stop

nginx.conf

worker_connections 512; } # ソケット接続 http { upstream myapp{ server unix:///var/www/rails/myapp/tmp/sockets/puma.sock; } server { listen 80 default_server; server_name 3.113.151.229;る root /myapp/public; #access_log logs/access.log; #error_log logs/error.log; location / { proxy_pass http://myapp; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; } } }

puma.rb

threads_count = ENV.fetch("RAILS_MAX_THREADS") { 5 }.to_i threads threads_count, threads_count environment ENV.fetch("RAILS_ENV") { "development" } plugin :tmp_restart app_root = File.expand_path("../..", __FILE__) bind "unix://#{app_root}/tmp/sockets/puma.sock" stdout_redirect "#{app_root}/log/puma.stdout.log", "#{app_root}/log/puma.stderr.log", true

試したこと

tmpディレクトリにsocketsディレクトリがなかったため mkdir sockets を行い、その中にpuma.sockを追加しました。しかし、問題は解決しませんでした。

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

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

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

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

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

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

guest

回答1

0

ベストアンサー

pumaはListening on unix:///myapp/tmp/sockets/puma.sock で待ってます
nginxは unix:///var/www/rails/myapp/tmp/sockets/puma.sock を訪ねます。
一致させてください。
/myapp/tmp/sockets/puma.sock が実在(自分で作ったものではなく、pumaが作ったものが)するならnginxの方を合わせるのが楽です。

投稿2021/07/05 13:46

winterboum

総合スコア23284

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

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

komati88

2021/07/05 14:55

ご返信ありがとうございます。ご指摘通り編集し、無事エラーは解消されました。ありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問