現在Docker + Rails 環境でアプリを作成しています。
Macのローカルで開発していた時はbetter_erros
を使いていたのですが、Docker環境を利用してRailsで開発するとbetter_errorsが動作しません。
調べてみると
- rails better errors docker - Google 検索
- dockerで立ち上げたrailsサーバでもBetter Errorsを使えるようにする - Qiita
- dockerで動いているrailsでbetter_errorsのirbが動作しない | ベジタブルプログラム
- better_errors not working in a Docker container · Issue #270 · BetterErrors/better_errors
といった同じ内容の記事があったので参考にして試してみましたが、表示がbetter_errors
導入前のエラー画面から変わりません(m_ m)
もしわかる方がいらっしゃればご教授いただきますようよろしくお願いいたします(m _m)
動作環境
Ruby: 2.5.7
Rails: 5.1.7
better_errors: 2.7.1
Docker for Mac: 2.2.0.5
エラー内容
- エラー時に gem
better_errors
導入時のエラー画面が表示されない
期待する動作
- エラー時に gem
better_errors
が動作するようになってほしい
試したこと
下記ファイルを修正、作成した後に
- docker-compse rub web bundle install
- docker-comopse build
- docker-compose up
- ブラウザで
localhost:3000/fae
のように存在しない適当なURLにアクセスする
該当しそうなコード
ruby
1# Gemfile 2: 3: 4group :development do 5 gem 'better_errors' 6 gem 'binding_of_caller' 7 gem 'bullet' 8 gem 'letter_opener_web', group: :development 9 gem 'listen', '>= 3.0.5', '< 3.2' 10 gem 'rubocop', require: false 11 gem 'rubocop-performance' 12 gem 'rubocop-rails', require: false 13 gem 'rubocop-rspec', require: false 14 gem 'solargraph' 15 gem 'spring' 16 gem 'spring-commands-rspec' 17 gem 'spring-watcher-listen', '~> 2.0.0' 18 gem 'web-console', '>= 3.3.0' 19end 20: 21:
ruby
1# config/initializers/better_errors.rb 2if Rails.env.development? 3 BetterErrors::Middleware.allow_ip! "0.0.0.0/0" 4end 5
docker
1# docker-compose.yml 2version: '3.7' 3services: 4 db: 5 image: mysql:5.7 6 environment: 7 MYSQL_ROOT_PASSWORD: password 8 MYSQL_DATABASE: root 9 ports: 10 - "4306:3306" 11 volumes: 12 - db-data:/var/lib/mysql 13 web: 14 init: true 15 tty: true 16 stdin_open: true 17 build: . 18 command: bash -c "rm -f tmp/pids/server.pid && bundle exec rails s -p 3000 -b '0.0.0.0'" 19 volumes: 20 - .:/webapp 21 ports: 22 - "3000:3000" 23 links: 24 - db 25volumes: 26 db-data:
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。