我目前是第一次将我的应用程序部署到 Heroku,并且遇到了预编译错误。当我执行命令git push heroku master
时,我得到:
Running: rake assets:precompile
rake aborted!
could not connect to server: Connection refused
Is the server running on host "127.0.0.1" and accepting
TCP/IP connections on port 5432?
经过一番搜索,我遇到了 Heroku 自己的关于预编译错误的故障排除指南,以及这篇关于预编译错误和 Rails 3.2的帖子,并按照他们的指示,做了以下事情:
- 添加
config.assets.initialize_on_precompile = false
到我的application.rb
文件中 heroku create
为了安全起见,制作了一个新的heroku应用程序- 根据Rails 指南,运行
bundle exec rake assets:precompile
我认为由于我在本地进行编译,因此在推送到 Heroku 时,它只会根据检测到 manifest.yml 文件跳过编译部分。但是,即使我这样做了,在运行时git push heroku master
,它仍然会运行rake assets:precompile
并产生与上面相同的错误。
提前感谢您的帮助!
附录
在我的 .gitignore 中,我有以下内容:
# Ignore bundler config
/.bundle
# Ignore the default SQLite database.
/db/*.sqlite3
# Ignore all logfiles and tempfiles.
/log/*.log
/tmp