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

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

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

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

Ruby on Rails 5

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

nginx

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

Docker

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

AWS(Amazon Web Services)

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

Q&A

解決済

1回答

3561閲覧

docker-compose up で rails pumaが起動しない

ponsata

総合スコア5

docker-compose

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

Ruby on Rails 5

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

nginx

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

Docker

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

AWS(Amazon Web Services)

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

0グッド

0クリップ

投稿2020/10/12 04:29

dockerで開発を行っており、いよいよ本番環境でrailsを起動しましたところ、強制終了してしまいました。
下記、起動ログになります。

prod_1 | bundler: failed to load command: puma (/usr/local/bundle/bin/puma) prod_1 | OptionParser::InvalidOption: invalid option: -E prod_1 | /usr/local/bundle/gems/puma-3.12.6/lib/puma/cli.rb:50:in `initialize' prod_1 | /usr/local/bundle/gems/puma-3.12.6/bin/puma:8:in `new' prod_1 | /usr/local/bundle/gems/puma-3.12.6/bin/puma:8:in `<top (required)>' prod_1 | /usr/local/bundle/bin/puma:23:in `load' prod_1 | /usr/local/bundle/bin/puma:23:in `<top (required)>' app_prod_1 exited with code 1

エラー原因を探しているとqiitaの投稿記事を見つけました

railsでpumaが走らない時に怪しむべきtmp以下
https://qiita.com/itosys/items/30a48f50ce376f5ca2fd

私の場合、本番環境でgit cloneしたファイルのディレクトを調べた結果 
tmp/socketsにpuma.sockというファイルが生成されてなかったので
コマンドでディレクトリとファイルを作成

mkdir scokets touch puma.sock

その後、bundler: failed to load command: puma (/usr/local/bundle/bin/puma)とエラーがありましたので、本番環境のdockerコンテナないを確認するとpumaファイルがなかったのでこちらも作成し
再度起動をしても、特に変わりませんでした。

ローカル環境であったはずの、ディレクトリやファイルが本番環境にないのはやはり設定の問題だと思うのですが
現段階で解決に至っておりません。

どなたか助けていただけると幸いです。

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

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

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

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

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

yasutakatou

2020/10/12 05:39

socketというより、「invalid option: -E」なのでpumaに無いオプション -Eをどこかで指定している箇所があるはずですが、思い当たるところございませんか?
ponsata

2020/10/12 05:54

ご返信ありがとうございます。 下記docker-compose.ymlの中身なのですが ``` version: '3' services: db: build: docker/db/ image: mysql:5.7 environment: MYSQL_DATABASE: db MYSQL_USER: root MYSQL_ROOT_PASSWORD: onigiri1 MYSQL_PASSWORD: onigiri1 TZ: "Asia/Tokyo" command: mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci volumes: # 永続化するときにマウントするdir - ./docker/db/mysql_data:/var/lib/mysql #- ./docker/db/my.cnf:/etc/mysql/conf.d/my.cnf # 初期データを投入するSQLが格納されているdir #- ./docker/db/mysql_init:/docker-entrypoint-initdb.d ports: - "3306:3306" prod: build: . command: bundle exec puma -C config/puma.rb -E production -D stdin_open: true tty: true volumes: - .:/myapp - gem_data:/myapp/pubic - tmp-data:/myapp/tmp - log-data:/myapp/log ports: - 3000:3000 depends_on: - db tty: true stdin_open: true environment: - EDITOR=vim nginx: build: context: nginx/ volumes: - gem_data:/myapp/pubic - tmp-data:/myapp/tmp ports: - 80:80 depends_on: - prod volumes: mysql_data: gem_data: tmp-data: log-data: ``` prodというのがrailsアプリケーションのコンテナになります。 command: bundle exec puma -C config/puma.rb -E production -D の記述で、pumaでrailsを起動しているのですが、 こちらの指定がうまくいっていないということでしょうか?
ponsata

2020/10/12 09:12

おっしゃる通りでした! 基本的なことを理解しておらず反省しております。 ありがとうございました。
yasutakatou

2020/10/12 09:44

いえいえ。無事解決できたようでなによりです!大文字小文字でエラーって見過ごしやすいですよね
guest

回答1

0

ベストアンサー

bundle exec puma -C config/puma.rb -E production -D

pumaの環境指定オプションは-Eではなくて-eではないでしょうか?
また、最後の-D-dかと。

参考
公式よりもわかりやすかったのでこちらを
オプション

投稿2020/10/12 06:20

yu_1985

総合スコア7440

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

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

ponsata

2020/10/12 09:14

おっしゃる通りでした。 ありがとうございます。 参考にさせていただきます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問