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

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

新規登録して質問してみよう
ただいま回答率
85.48%
docker-compose

docker-composeとは、複数のコンテナで構成されるサービスを提供する手順を自動的し管理を簡単にするツール。composeファイルを使用しコマンド1回で設定した全サービスを作成・起動することが可能です。

Ruby on Rails 6

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

nginx

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

AWS(Amazon Web Services)

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

Q&A

解決済

1回答

2473閲覧

AWS(ECS)にデプロイしたがアクセスしても表示されない(500 error)

gozikyu

総合スコア4

docker-compose

docker-composeとは、複数のコンテナで構成されるサービスを提供する手順を自動的し管理を簡単にするツール。composeファイルを使用しコマンド1回で設定した全サービスを作成・起動することが可能です。

Ruby on Rails 6

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

nginx

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

AWS(Amazon Web Services)

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

0グッド

0クリップ

投稿2021/04/01 23:03

編集2021/04/01 23:20

以下の内容をEC2上にデプロイしたのですが、バックエンドのrailsのみうまく動作していません。

フロントエンド:react
バックエンド:rails(APIモード) , nginx, puma

ローカルでdocker-composeを用いて開発しており、本番環境でも同様にdocker-composeを用いてデプロイしています。

ec2にsshでログインし、デプロイしているアドレスにリクエストをした際のログを見ると500のエラーがでているのですが、詳しい情報がなく、なぜ500になっているのかわからず困っております。

ターミナルのログ(/gymsにアクセス、つまり/gymsにgetリクエストを出した際のログ)
https://gyazo.com/5f1282f3a35d3a89a9d414545b6abbdd
routes.rbなどのファイルは以下に記載しております。

初心者質問で恐縮ですがよろしくお願いいたします。

ファイル構成
https://gyazo.com/e92a44c33eacf9f8d0b09ee6322d8234

routes.rb

Rails.application.routes.draw do get '/gyms', to: 'gyms#index' post '/gyms', to: 'gyms#create' delete '/gyms/:id', to: 'gyms#destroy' get '/login', to: 'sessions#new' post '/login', to: 'sessions#create' delete '/logout', to: 'sessions#destroy' get '/trainings', to: 'trainings#index' get '/trainings/:id', to: 'trainings#user_training' post '/trainings', to: 'trainings#create' post '/trainings/search', to: 'trainings#search' delete '/trainings/:id', to: 'trainings#destroy' get '/trainings/:id/followers', to: 'trainings#getting_followers' resources :users get 'users/trainings/:training_id', to: 'users#follow_training' get 'users/:user_id/trainings/:training_id', to: 'users#followed_training?' delete 'users/:user_id/trainings/:training_id', to: 'users#unfollow_training' get '/chats/:id', to: 'chats#show' post '/chats', to: 'chats#create' delete '/chats/:id', to: 'chats#destroy' end

docker-compose

version: "3" services: app: build: context: ./api/ dockerfile: Dockerfile env_file: - ./api/environments/db.env command: bundle exec puma -C config/puma.rb -e production volumes: - ./api:/webapp - public-data:/webapp/public - tmp-data:/webapp/tmp - log-data:/webapp/log front: build: context: ./front/ dockerfile: Dockerfile volumes: - ./front:/usr/src/app command: sh -c "cd react_front && yarn start" ports: - "3000:3000" volumes: public-data: tmp-data: log-data:

DockerFile(rails)

FROM ruby:2.6 # リポジトリを更新し依存モジュールをインストール RUN apt-get update -qq && \ apt-get install -y build-essential \ nodejs # ルート直下にwebappという名前で作業ディレクトリを作成(コンテナ内のアプリケーションディレクトリ) RUN mkdir /webapp WORKDIR /webapp # ホストのGemfileとGemfile.lockをコンテナにコピー ADD Gemfile /webapp/Gemfile ADD Gemfile.lock /webapp/Gemfile.lock # bundle installの実行 RUN bundle install # ホストのアプリケーションディレクトリ内をすべてコンテナにコピー ADD . /webapp # puma.sockを配置するディレクトリを作成 RUN mkdir -p tmp/sockets

DockerFile(nginx)

FROM nginx:1.15.8 # インクルード用のディレクトリ内を削除 RUN rm -f /etc/nginx/conf.d/* # Nginxの設定ファイルをコンテナにコピー ADD nginx.conf /etc/nginx/conf.d/webapp.conf # ビルド完了後にNginxを起動(デーモンをオフにしてフォアグラウンドで実行) CMD /usr/sbin/nginx -g 'daemon off;' -c /etc/nginx/nginx.conf

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

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

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

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

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

yu_1985

2021/04/02 06:04

pumaのログはどうなっていますか
gozikyu

2021/04/02 09:30

yu_19851さん コメントありがとうございます。 こちら、試行錯誤していたら解決いたしました。 結論として、db:create db:migrateをしていなかったのが原因のようです。 お騒がせいたしました。
yu_1985

2021/04/02 09:34

つまるところ、まずデプロイが完了していなかったということですね…。
guest

回答1

0

自己解決

db:create ,db:migrate をしたら解決したので、データベースを作成していないことが原因だったと思われます。

本番環境に慣れていないのもあり、うまくエラーのログを見れず苦労しましたが、試行錯誤しておりました、、、

投稿2021/04/02 09:32

gozikyu

総合スコア4

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問