【发布时间】:2015-09-09 14:55:48
【问题描述】:
我在 Heroku 上有一个 Rails 4 应用程序,我正在尝试使用两个构建包进行部署。我不确定我是否缺少步骤或是否存在错误,但是当我推送代码时,应用程序部署成功。但是,当我打开它时,它会崩溃。
我尝试使用命令heroku buildpacks:set https://github.com/bobbus/image-optim-buildpack.git 和heroku buildpacks:set https://github.com/ddollar/heroku-buildpack-multi.git,但一次只能设置一个,不能同时设置。我设置哪一个似乎并不重要,应用程序总是崩溃。搜索日志,我看到以下内容:
heroku[web.1]: State changed from crashed to starting
heroku[web.1]: Starting process with command `bundle exec puma -t 5:5 -p ${PORT:-3000} -e ${RACK_ENV:-development}`
app[web.1]: bash: bundle: command not found
heroku[web.1]: Process exited with status 127
heroku[web.1]: State changed from starting to crashed
我不是bundler 方面的专家,但似乎由于某种原因它无法识别我的 Procfile 中的 bundle 命令。
这是我的 Procfile,我应该注意到到目前为止它运行良好。
web: bundle exec puma -t 5:5 -p ${PORT:-3000} -e ${RACK_ENV:-development}
我也尝试过清除 buildpack (heroku buildpacks:clear) 并改为创建 .buildpacks 文件,但这产生了同样的错误。
这是我的.builcpacks 文件:
https://github.com/ddollar/heroku-buildpack-multi.git
https://github.com/bobbus/image-optim-buildpack.git
据我所知,Heroku 开发中心和构建包本身的文档非常少。
【问题讨论】:
-
请您澄清一下“到目前为止一直工作得很好”。 bundle 命令是否曾经在 Heroku deploy 上运行,然后有什么东西破坏了它?
-
我的 Procfile 中的 bundle 命令之前工作正常,如果我删除 .buildpacks 文件和/或运行
heroku buildpacks:clear仍然可以工作。日志中的错误让我相信这是问题的根源。 -
好的。了解这一点很有帮助。
标签: ruby-on-rails heroku bundler buildpack