【问题标题】:'You do not have access to the app' when trying to access heroku console尝试访问heroku控制台时“您无权访问该应用程序”
【发布时间】:2015-12-11 04:50:49
【问题描述】:

我最近开始在一个使用 Ruby on Rails 的 Heroku 项目中进行合作。我被添加为协作者并将遥控器添加到我的环境中。经过一些开发,我推送了一些更改,没有任何问题:

$ git push staging

staging 是我的遥控器的名称。 后来,当我尝试在 Heroku 上运行“rake test”时,我收到了一个错误:

$heroku run rake test --app staging
Running `rake test` attached to terminal... failed
 !    You do not have access to the app staging.

这很奇怪,因为我完全能够推动自己的更改。我检查了 Heroku 仪表板,发现我的推送记录在那里。然后我尝试使用控制台查看日志,也出现了同样的问题。

$ heroku logs --app staging
 !    You do not have access to the app staging.

最后,我尝试访问控制台,但也失败了。

$ heroku run rails console --app staging
Running `rails console` attached to terminal... failed
 !    You do not have access to the app staging.

此时我更新了我的 Heroku toolbelt 安装,并使用“heroku auth”来验证我的电子邮件是否显示,但错误仍然存​​在。我目前正在联系 Heroku 支持,但我希望有类似问题的人可以同时帮助我。

谢谢!

【问题讨论】:

    标签: ruby-on-rails heroku collaboration rails-console rake-test


    【解决方案1】:

    这是因为您的 ssh 密钥不再被允许访问。确保您的 ssh 密钥相同。您还可以重新生成 ssh 密钥并将其添加到 heroku。

    【讨论】:

      【解决方案2】:

      所以以防万一有人遇到类似问题,这是因为我将 Heroku 应用程序的名称与 git 遥控器的名称混合在一起。因此,当我调用 --app staging(我的遥控器的名称)时,我应该使用应用程序的实际名称,如在 Heroku 中找到的那样。

      【讨论】:

      • 谢谢,这很有帮助。这很令人困惑,因为如果您在没有应用程序名称的情况下运行 $ heroku run bash,它会警告您有多个应用程序,然后列出 git 遥控器的名称。所以我也一直尝试使用远程名称选择一个应用程序。
      【解决方案3】:

      当您没有添加 heroku git 远程存储库时也会发生这种情况。

      您可以使用以下命令添加它:

      git remote add heroku https://git.heroku.com/<your project>.git
      

      你也可以输入

      heroku git:remote -a AppName
      

      【讨论】:

      • 我的情况和这个问题的问题情况有点不同,但是你的回答对我很有帮助。谢谢。
      • 我试过这个,但得到了同样的错误。您还有其他建议吗?
      【解决方案4】:

      在第一次使用 Heroku 工具带命令之前,请务必运行 heroku login。它不会告诉您您之前没有登录过。

      【讨论】:

      • heroku createheroku login 运行之前意外运行的情况有帮助吗?我不知道如何扭转这种情况。
      【解决方案5】:

      你也可以运行:

      heroku run rake test --remote staging
      

      不确定幕后发生了什么,但本地 CLI 工具会根据您的 git 远程确定您指的是哪个应用程序。

      【讨论】:

        【解决方案6】:

        在我没有从 master 推送的情况下,我遇到了同样的问题,所以我不得不使用这个: git push heroku :main

        【讨论】:

          【解决方案7】:

          我发现自己又回到了这个问题/答案几次。所以我想我会记下导致它的原因以及我是如何修复它的。

          原因

          就我而言,我为应用程序创建了一个暂存环境。

          解决办法

          现在heroku 需要这样的东西来staging

          heroku run env -a my_app_name --remote staging
          

          或像这样用于生产

          heroku run env -a my_app_name --remote production
          

          (只需将env 替换为您正在运行的任何命令)

          【讨论】:

            猜你喜欢
            • 2020-10-01
            • 2014-09-27
            • 2016-10-20
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2020-05-10
            • 2016-12-29
            • 1970-01-01
            相关资源
            最近更新 更多