【发布时间】:2020-05-31 04:38:18
【问题描述】:
我已经通过新集成的 Webpacker for JS 使用 React 构建了一个 Rails 6 应用程序,但似乎无法克服部署到 Heroku 的最后障碍。我不太了解日志。我确实创建了一个Procfile 来启动 Puma 和 Webpack 服务器。有人介意查看日志并告诉我我可能遗漏了什么吗?顺便说一句,第一个障碍是摆脱 Yarn 与 NPM 锁定文件的冲突。
这里是日志:
2020-02-15T19:10:42.074186+00:00 app[web.1]: bundler: failed to load command: puma (/app/vendor/bundle/ruby/2.6.0/bin/puma)
2020-02-15T19:10:42.074256+00:00 app[web.1]: ActiveRecord::StatementInvalid: PG::UndefinedTable: ERROR: relation "outages" does not exist
2020-02-15T19:10:42.074256+00:00 app[web.1]: LINE 8: WHERE a.attrelid = '"outages"'::regclass
2020-02-15T19:10:42.074257+00:00 app[web.1]: ^
2020-02-15T19:10:42.074269+00:00 app[web.1]:
2020-02-15T19:10:42.074271+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/activerecord-6.0.2.1/lib/active_record/connection_adapters/postgresql/database_statements.rb:65:in `exec'
2020-02-15T19:10:42.074274+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/activerecord-6.0.2.1/lib/active_record/connection_adapters/postgresql/database_statements.rb:65:in `block (2 levels) in query'
2020-02-15T19:10:42.074274+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/activesupport-6.0.2.1/lib/active_support/dependencies/interlock.rb:48:in `block in permit_concurrent_loads'
2020-02-15T19:10:42.074275+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/activesupport-6.0.2.1/lib/active_support/concurrency/share_lock.rb:187:in `yield_shares'
2020-02-15T19:10:42.074275+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/activesupport-6.0.2.1/lib/active_support/dependencies/interlock.rb:47:in `permit_concurrent_loads'
2020-02-15T19:10:42.074275+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/activerecord-6.0.2.1/lib/active_record/connection_adapters/postgresql/database_statements.rb:64:in `block in query'
2020-02-15T19:10:42.074276+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/activerecord-6.0.2.1/lib/active_record/connection_adapters/abstract_adapter.rb:718:in `block (2 levels) in log'
2020-02-15T19:10:42.074276+00:00 app[web.1]: /app/vendor/ruby-2.6.3/lib/ruby/2.6.0/monitor.rb:230:in `mon_synchronize'
2020-02-15T19:10:42.074276+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/activerecord-6.0.2.1/lib/active_record/connection_adapters/abstract_adapter.rb:717:in `block in log'
2020-02-15T19:10:42.074277+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/activesupport-6.0.2.1/lib/active_support/notifications/instrumenter.rb:24:in `instrument'
2020-02-15T19:10:42.074277+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/activerecord-6.0.2.1/lib/active_record/connection_adapters/abstract_adapter.rb:708:in `log'
2020-02-15T19:10:42.074277+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/activerecord-6.0.2.1/lib/active_record/connection_adapters/postgresql/database_statements.rb:63:in `query'
2020-02-15T19:10:42.074277+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/activerecord-6.0.2.1/lib/active_record/connection_adapters/postgresql_adapter.rb:817:in `column_definitions'
2020-02-15T19:10:42.074278+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/activerecord-6.0.2.1/lib/active_record/connection_adapters/abstract/schema_statements.rb:114:in `columns'
2020-02-15T19:10:42.074278+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/activerecord-6.0.2.1/lib/active_record/connection_adapters/schema_cache.rb:76:in `columns'
2020-02-15T19:10:42.074278+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/activerecord-6.0.2.1/lib/active_record/connection_adapters/schema_cache.rb:82:in `columns_hash'
2020-02-15T19:10:42.074278+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/activerecord-6.0.2.1/lib/active_record/model_schema.rb:490:in `load_schema!'
2020-02-15T19:10:42.074279+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/activerecord-6.0.2.1/lib/active_record/attributes.rb:247:in `load_schema!'
2020-02-15T19:10:42.074279+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/activerecord-6.0.2.1/lib/active_record/attribute_decorators.rb:51:in `load_schema!'
2020-02-15T19:10:42.074279+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/activerecord-6.0.2.1/lib/active_record/model_schema.rb:480:in `block in load_schema'
2020-02-15T19:10:42.074279+00:00 app[web.1]: /app/vendor/ruby-2.6.3/lib/ruby/2.6.0/monitor.rb:230:in `mon_synchronize'
2020-02-15T19:10:42.074280+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/activerecord-6.0.2.1/lib/active_record/model_schema.rb:477:in `load_schema'
2020-02-15T19:10:42.074280+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/activerecord-6.0.2.1/lib/active_record/model_schema.rb:352:in `columns_hash'
2020-02-15T19:10:42.074280+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/activerecord-6.0.2.1/lib/active_record/relation/query_methods.rb:1216:in `arel_column'
2020-02-15T19:10:42.074280+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/activerecord-6.0.2.1/lib/active_record/relation/query_methods.rb:1203:in `block in arel_columns'
2020-02-15T19:10:42.074280+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/activerecord-6.0.2.1/lib/active_record/relation/query_methods.rb:1196:in `each'
2020-02-15T19:10:42.074280+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/activerecord-6.0.2.1/lib/active_record/relation/query_methods.rb:1196:in `flat_map'
2020-02-15T19:10:42.074281+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/activerecord-6.0.2.1/lib/active_record/relation/query_methods.rb:1196:in `arel_columns'
2020-02-15T19:10:42.074281+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/activerecord-6.0.2.1/lib/active_record/relation/query_methods.rb:1187:in `build_select'
2020-02-15T19:10:42.074281+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/activerecord-6.0.2.1/lib/active_record/relation/query_methods.rb:1071:in `build_arel'
2020-02-15T19:10:42.074284+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/activerecord-6.0.2.1/lib/active_record/relation/query_methods.rb:1016:in `arel'
2020-02-15T19:10:42.074284+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/activerecord-6.0.2.1/lib/active_record/relation/finder_methods.rb:317:in `block in exists?'
2020-02-15T19:10:42.074284+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/activerecord-6.0.2.1/lib/active_record/relation.rb:828:in `skip_query_cache_if_necessary'
2020-02-15T19:10:42.074284+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/activerecord-6.0.2.1/lib/active_record/relation/finder_methods.rb:317:in `exists?'
2020-02-15T19:10:42.074285+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/activerecord-6.0.2.1/lib/active_record/querying.rb:21:in `exists?'
2020-02-15T19:10:42.074285+00:00 app[web.1]: /app/app/controllers/application_controller.rb:3:in `<class:ApplicationController>'
2020-02-15T19:10:42.074285+00:00 app[web.1]: /app/app/controllers/application_controller.rb:1:in `<main>'
2020-02-15T19:10:42.074285+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require'
2020-02-15T19:10:42.074285+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `block in require_with_bootsnap_lfi'
2020-02-15T19:10:42.074286+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/loaded_features_index.rb:92:in `register'
2020-02-15T19:10:42.074286+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:21:in `require_with_bootsnap_lfi'
2020-02-15T19:10:42.074286+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:30:in `require'
2020-02-15T19:10:42.074286+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.2.2/lib/zeitwerk/kernel.rb:16:in `require'
2020-02-15T19:10:42.074287+00:00 app[web.1]: /app/app/controllers/dashboard_controller.rb:1:in `<main>'
2020-02-15T19:10:42.074287+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require'
2020-02-15T19:10:42.074287+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `block in require_with_bootsnap_lfi'
2020-02-15T19:10:42.074287+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/loaded_features_index.rb:92:in `register'
2020-02-15T19:10:42.074287+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:21:in `require_with_bootsnap_lfi'
2020-02-15T19:10:42.074288+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:30:in `require'
2020-02-15T19:10:42.074288+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.2.2/lib/zeitwerk/kernel.rb:16:in `require'
2020-02-15T19:10:42.074288+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.2.2/lib/zeitwerk/loader.rb:351:in `const_get'
2020-02-15T19:10:42.074288+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.2.2/lib/zeitwerk/loader.rb:351:in `block (2 levels) in eager_load'
2020-02-15T19:10:42.074289+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.2.2/lib/zeitwerk/loader.rb:685:in `block in ls'
2020-02-15T19:10:42.074289+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.2.2/lib/zeitwerk/loader.rb:682:in `foreach'
2020-02-15T19:10:42.074289+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.2.2/lib/zeitwerk/loader.rb:682:in `ls'
2020-02-15T19:10:42.074289+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.2.2/lib/zeitwerk/loader.rb:346:in `block in eager_load'
2020-02-15T19:10:42.074289+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.2.2/lib/zeitwerk/loader.rb:338:in `synchronize'
2020-02-15T19:10:42.074289+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.2.2/lib/zeitwerk/loader.rb:338:in `eager_load'
2020-02-15T19:10:42.074290+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.2.2/lib/zeitwerk/loader.rb:449:in `each'
2020-02-15T19:10:42.074290+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/zeitwerk-2.2.2/lib/zeitwerk/loader.rb:449:in `eager_load_all'
2020-02-15T19:10:42.074290+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/railties-6.0.2.1/lib/rails/application/finisher.rb:122:in `block in <module:Finisher>'
2020-02-15T19:10:42.074290+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/railties-6.0.2.1/lib/rails/initializable.rb:32:in `instance_exec'
2020-02-15T19:10:42.074291+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/railties-6.0.2.1/lib/rails/initializable.rb:32:in `run'
2020-02-15T19:10:42.074291+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/railties-6.0.2.1/lib/rails/initializable.rb:61:in `block in run_initializers'
2020-02-15T19:10:42.074291+00:00 app[web.1]: /app/vendor/ruby-2.6.3/lib/ruby/2.6.0/tsort.rb:228:in `block in tsort_each'
2020-02-15T19:10:42.074291+00:00 app[web.1]: /app/vendor/ruby-2.6.3/lib/ruby/2.6.0/tsort.rb:350:in `block (2 levels) in each_strongly_connected_component'
2020-02-15T19:10:42.074291+00:00 app[web.1]: /app/vendor/ruby-2.6.3/lib/ruby/2.6.0/tsort.rb:431:in `each_strongly_connected_component_from'
2020-02-15T19:10:42.074294+00:00 app[web.1]: /app/vendor/ruby-2.6.3/lib/ruby/2.6.0/tsort.rb:349:in `block in each_strongly_connected_component'
2020-02-15T19:10:42.074294+00:00 app[web.1]: /app/vendor/ruby-2.6.3/lib/ruby/2.6.0/tsort.rb:347:in `each'
2020-02-15T19:10:42.074294+00:00 app[web.1]: /app/vendor/ruby-2.6.3/lib/ruby/2.6.0/tsort.rb:347:in `call'
2020-02-15T19:10:42.074295+00:00 app[web.1]: /app/vendor/ruby-2.6.3/lib/ruby/2.6.0/tsort.rb:347:in `each_strongly_connected_component'
2020-02-15T19:10:42.074295+00:00 app[web.1]: /app/vendor/ruby-2.6.3/lib/ruby/2.6.0/tsort.rb:226:in `tsort_each'
2020-02-15T19:10:42.074295+00:00 app[web.1]: /app/vendor/ruby-2.6.3/lib/ruby/2.6.0/tsort.rb:205:in `tsort_each'
2020-02-15T19:10:42.074295+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/railties-6.0.2.1/lib/rails/initializable.rb:60:in `run_initializers'
2020-02-15T19:10:42.074296+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/railties-6.0.2.1/lib/rails/application.rb:363:in `initialize!'
2020-02-15T19:10:42.074296+00:00 app[web.1]: /app/config/environment.rb:5:in `<top (required)>'
2020-02-15T19:10:42.074297+00:00 app[web.1]: config.ru:3:in `require_relative'
2020-02-15T19:10:42.074297+00:00 app[web.1]: config.ru:3:in `block in <main>'
2020-02-15T19:10:42.074315+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/rack-2.2.2/lib/rack/builder.rb:116:in `eval'
2020-02-15T19:10:42.074316+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/rack-2.2.2/lib/rack/builder.rb:116:in `new_from_string'
2020-02-15T19:10:42.074316+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/rack-2.2.2/lib/rack/builder.rb:105:in `load_file'
2020-02-15T19:10:42.074316+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/rack-2.2.2/lib/rack/builder.rb:66:in `parse_file'
2020-02-15T19:10:42.074316+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/puma-4.3.1/lib/puma/configuration.rb:321:in `load_rackup'
2020-02-15T19:10:42.074317+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/puma-4.3.1/lib/puma/configuration.rb:246:in `app'
2020-02-15T19:10:42.074317+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/puma-4.3.1/lib/puma/runner.rb:155:in `load_and_bind'
2020-02-15T19:10:42.074317+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/puma-4.3.1/lib/puma/single.rb:98:in `run'
2020-02-15T19:10:42.074317+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/puma-4.3.1/lib/puma/launcher.rb:172:in `run'
2020-02-15T19:10:42.074318+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/puma-4.3.1/lib/puma/cli.rb:80:in `run'
2020-02-15T19:10:42.074318+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/gems/puma-4.3.1/bin/puma:10:in `<top (required)>'
2020-02-15T19:10:42.074318+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/bin/puma:23:in `load'
2020-02-15T19:10:42.074318+00:00 app[web.1]: /app/vendor/bundle/ruby/2.6.0/bin/puma:23:in `<top (required)>'
2020-02-15T19:10:42.174683+00:00 heroku[web.1]: State changed from starting to crashed
2020-02-15T19:10:42.158245+00:00 heroku[web.1]: Process exited with status 1
2020-02-15T19:10:43.902737+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=tml-dashboard.herokuapp.com request_id=c6f9e222-b62f-47e2-b5eb-5befc8af9ad2 fwd="68.194.85.143" dyno= connect= service= status=503 bytes= protocol=https
2020-02-15T19:10:45.661172+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=tml-dashboard.herokuapp.com request_id=25660d39-0184-411c-8e94-d54fcbd0d7b3 fwd="68.194.85.143" dyno= connect= service= status=503 bytes= protocol=https
【问题讨论】:
标签: ruby-on-rails ruby heroku webpack puma