【发布时间】:2016-07-25 22:03:44
【问题描述】:
我正在尝试在我的生产应用程序上运行 heroku run rake db:migrate,但遇到以下错误 -
heroku run rake db:migrate
Running rake db:migrate on ⬢ thesenumbersmatter... up, run.9613
/app/bin/bundle: line 1: syntax error near unexpected token `('
/app/bin/bundle: line 1: `ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', __FILE__)'
这是我的 Heroku 日志的快照 -
2016-07-25T21:10:00.983053+00:00 heroku[web.1]: Process exited with status 0
2016-07-25T21:10:04.570431+00:00 heroku[web.1]: Starting process with command `bundle exec puma -C config/puma.rb`
2016-07-25T21:10:06.571961+00:00 app[web.1]: /app/bin/bundle: line 1: `ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', __FILE__)'
2016-07-25T21:10:06.571944+00:00 app[web.1]: /app/bin/bundle: line 1: syntax error near unexpected token `('
2016-07-25T21:10:06.658238+00:00 heroku[web.1]: Process exited with status 2
2016-07-25T21:10:06.644327+00:00 heroku[web.1]: State changed from crashed to starting
2016-07-25T21:10:06.643399+00:00 heroku[web.1]: State changed from starting to crashed
2016-07-25T21:10:12.115987+00:00 heroku[web.1]: Starting process with command `bundle exec puma -C config/puma.rb`
2016-07-25T21:10:13.691797+00:00 app[web.1]: /app/bin/bundle: line 1: syntax error near unexpected token `('
2016-07-25T21:10:13.691814+00:00 app[web.1]: /app/bin/bundle: line 1: `ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', __FILE__)'
2016-07-25T21:10:13.748988+00:00 heroku[web.1]: Process exited with status 2
2016-07-25T21:10:40.708442+00:00 heroku[api]: Starting process with command `bundle exec rake db:migrate` by tomalhossain@gmail.com
2016-07-25T21:10:48.439887+00:00 heroku[run.8272]: Awaiting client
2016-07-25T21:10:48.469049+00:00 heroku[run.8272]: Starting process with command `bundle exec rake db:migrate`
2016-07-25T21:10:48.680222+00:00 heroku[run.8272]: State changed from starting to up
2016-07-25T21:10:50.599637+00:00 heroku[run.8272]: Process exited with status 2
2016-07-25T21:10:50.622277+00:00 heroku[run.8272]: State changed from up to complete
2016-07-25T21:21:32.953192+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=thesenumbersmatter.herokuapp.com request_id=226e241c-763b-4fcb-985a-c71ef6d8ccaa fwd="209.155.210.42" dyno= connect= service= status=503 bytes=
2016-07-25T21:21:33.255547+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=thesenumbersmatter.herokuapp.com request_id=20f7db1b-7fb0-47dc-ad61-726cde0b1883 fwd="209.155.210.42" dyno= connect= service= status=503 bytes=
2016-07-25T21:22:39.707138+00:00 heroku[api]: Starting process with command `bundle exec rake db:migrate` by tomalhossain@gmail.com
2016-07-25T21:22:46.341944+00:00 heroku[run.2340]: Awaiting client
2016-07-25T21:22:46.378195+00:00 heroku[run.2340]: Starting process with command `bundle exec rake db:migrate`
2016-07-25T21:22:46.344312+00:00 heroku[run.2340]: State changed from starting to up
2016-07-25T21:22:48.286888+00:00 heroku[run.2340]: Process exited with status 2
2016-07-25T21:22:48.300483+00:00 heroku[run.2340]: State changed from up to complete
2016-07-25T21:30:27.247935+00:00 heroku[api]: Starting process with command `bash` by tomalhossain@gmail.com
2016-07-25T21:30:33.624786+00:00 heroku[run.7831]: Awaiting client
2016-07-25T21:30:33.656346+00:00 heroku[run.7831]: Starting process with command `bash`
2016-07-25T21:30:33.804038+00:00 heroku[run.7831]: State changed from starting to up
2016-07-25T21:34:39.761952+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=thesenumbersmatter.herokuapp.com request_id=45451b08-447b-4e05-851b-ce5f092a0f22 fwd="40.141.196.170" dyno= connect= service= status=503 bytes=
这是我的 Gemfile -
source 'https://rubygems.org'
gem 'rails', '4.2.6'
gem 'puma'
gem 'pg'
gem 'sass-rails', '~> 5.0'
gem 'uglifier', '>= 1.3.0'
gem 'coffee-rails', '~> 4.1.0'
gem 'jquery-rails'
gem 'turbolinks'
gem 'jbuilder', '~> 2.0'
gem 'sdoc', '~> 0.4.0', group: :doc
gem 'activeadmin', github: 'activeadmin'
gem 'active_material', github: 'vigetlabs/active_material'
gem 'devise'
gem 'cancan'
gem 'draper'
gem 'pundit'
gem 'foreman'
gem 'browserify-rails'
gem 'simplest_photo', github: 'vigetlabs/simplest_photo'
gem 'colonel_kurtz_ruby'
group :development, :test do
gem 'pry'
gem 'pry-doc'
end
group :development do
gem 'web-console', '~> 2.0'
gem 'spring'
end
group :test do
gem 'rspec-rails'
gem 'shoulda-matchers'
gem 'guard-rspec'
gem 'capybara'
gem 'launchy'
end
group :production do
gem 'rails_12factor'
end
我的应用同时使用 heroku/nodejs 和 heroku/ruby buildpacks,因为我的主页上有 React 组件渲染某些组件。我对 RoR 比较陌生,这是我的第一个 StackOverflow 问题,所以我为我错过的任何事情道歉。我还刚刚注意到,在 heroku 服务器上的 bash 提示符下运行 rails -v 会返回以下内容,所以我认为有些事情根本上是错误的。 -
Running bash on ⬢ thesenumbersmatter... up, run.6069
~ $ rails -v
/app/bin/rails: line 1: begin: command not found
/app/bin/rails: line 2: syntax error near unexpected token `('
/app/bin/rails: line 2: ` load File.expand_path('../spring', __FILE__)'
感谢您的帮助!
编辑:这是我的 Puma 配置文件。
workers Integer(ENV['WEB_CONCURRENCY'] || 2)
threads_count = Integer(ENV['RAILS_MAX_THREADS'] || 5)
threads threads_count, threads_count
preload_app!
rackup DefaultRackup
port ENV['PORT'] || 3000
environment ENV['RACK_ENV'] || 'development'
on_worker_boot do
ActiveRecord::Base.establish_connection
end
【问题讨论】:
-
我还应该提到,我的应用在我的开发环境中运行良好。
-
你能把
config/puma.rb的内容粘贴一下吗?好像有语法错误 -
bin/bundle: 第 1 行:`ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', FILE)' 它看起来你的报价有一些问题。我认为应该是 ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', FILE)
-
感谢您的回复。我不相信这是问题的根源,因为正如我在下面指出的那样,在我的 Heroku 生产应用程序的 bash 提示符中简单地运行
rails -v会遇到类似的语法错误。但是,我在编辑中提供了配置文件。
标签: ruby-on-rails heroku rake