【问题标题】:I'm having issue of pushing to heroku我有推送到heroku的问题
【发布时间】:2018-06-20 19:12:46
【问题描述】:

它在我的本地服务器上正常工作。

现在,我想在应用到实时网站之前对其进行测试。

但是,当我尝试推送到 heroku 时,我一直遇到这个错误。

有人对此有任何想法并可以帮助我吗?

谢谢。

carrey:~/workspace/joy (master) $ git push heroku master
Counting objects: 2396, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (743/743), done.
Writing objects: 100% (2396/2396), 13.31 MiB | 1.43 MiB/s, done.
Total 2396 (delta 1520), reused 2396 (delta 1520)
remote: Compressing source files... done.
remote: Building source:
remote: 
remote: -----> Ruby app detected
remote: -----> Compiling Ruby/Rails
remote:        Command: 'set -o pipefail; curl -L --fail --retry 5 --retry-delay 1 --connect-timeout 3 --max-time 30 https://s3-external-1.amazonaws.com/heroku-buildpack-ruby/heroku-16/ruby-2.1.5.tgz -s -o - | tar zxf - ' failed on attempt 1 of 3.
remote:        Command: 'set -o pipefail; curl -L --fail --retry 5 --retry-delay 1 --connect-timeout 3 --max-time 30 https://s3-external-1.amazonaws.com/heroku-buildpack-ruby/heroku-16/ruby-2.1.5.tgz -s -o - | tar zxf - ' failed on attempt 2 of 3.
remote:  !
remote:  !     An error occurred while installing ruby-2.1.5
remote:  !     
remote:  !     Heroku recommends you use the latest supported Ruby version listed here:
remote:  !     https://devcenter.heroku.com/articles/ruby-support#supported-runtimes
remote:  !     
remote:  !     For more information on syntax for declaring a Ruby version see:
remote:  !     https://devcenter.heroku.com/articles/ruby-versions
remote:  !     
remote:  !     
remote:  !     Debug InformationCommand: 'set -o pipefail; curl -L --fail --retry 5 --retry-delay 1 --connect-timeout 3 --max-time 30 https://s3-external-1.amazonaws.com/heroku-buildpack-ruby/heroku-16/ruby-2.1.5.tgz -s -o - | tar zxf - ' failed unexpectedly:
remote:  !     
remote:  !     gzip: stdin: unexpected end of file
remote:  !     tar: Child returned status 1
remote:  !     tar: Error is not recoverable: exiting now
remote:  !
remote:  !     Push rejected, failed to compile Ruby app.
remote: 
remote:  !     Push failed
remote: Verifying deploy...
remote: 
remote: !       Push rejected to joynus-ian.
remote: 
To https://git.heroku.com/joynus-ian.git
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'https://git.heroku.com/joy-ian.git'

【问题讨论】:

  • 看起来可能是 Amazon 宕机了——在我看来 Heroku 无法连接到为 buildpack 托管 Ruby 源代码的 S3 存储桶。自您提出此问题以来,您是否在 3 小时内再次尝试过?如果是,那么成功了吗?
  • 您的 gemfile 中的 ruby​​ 版本是什么?看来您使用的是 Heroku 不支持的 2.1.5。尝试更改 ruby​​ 版本
  • 感谢大家的回答。我想到了。这是 ruby​​ 版本的问题。

标签: ruby-on-rails git heroku


【解决方案1】:

找到错误的原因有点困难。因为您没有显示您所做的部署到 Heroku 的步骤。如果您错过了一些必需的步骤,通常会发生错误。请检查以下步骤,然后重试。我希望这能帮助你解决你的问题。另外,我建议您查看官方Documentation 来部署您的应用。

===========================

1) 检查捆绑器

$ bundle -v

===========================

2) 如果不存在

$ gem install bundler

============================

3) 在开发组中我可能会使用 100 颗宝石,但在生产组中我只会使用一些。 所以,我的所有配置都不能影响到生产组。

$ bundle install —without production

==============================

4)安装heroku toolbelt(搜索google了解更多) => 检查 Homebrew 是否安装

$ brew -v

如果未安装,请在 google 上搜索安装 Homebrew 的命令... =>一旦你准备好了,然后安装heroku toolbelt

    $ brew install heroku-toolbelt

    $ heroku update

===================================

5) 你应该注册 heroku,然后

$heroku login (*password* for heroku)

如果您还没有 SSH 密钥,它会为您提供创建新密钥并说是!如果它没有提供任何要应用的密钥,您可以手动创建 SSH 密钥。

$mkdir ~/.ssh

$ssh-keygen -t rsa

====================================

6) 创建要部署的heroku

$heroku create

====================================

7) 部署前

提交并推送所有修改过的文件

8) 添加键:

$heroku keys:add

====================================

9)

$git push heroku master

==================================

10) heroku 为访问项目提供了一个随机名称,您可以轻松更改它

$heroku rename "new app name"

======================================

11) 每次添加新模型并生成迁移时,您还必须部署迁移

$heroku run rails db:migrate

=======================================

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-02-14
    • 2011-11-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-15
    • 1970-01-01
    相关资源
    最近更新 更多