1

我正在尝试在 Heroku 上启动 Play 2.1 应用程序,但我不知道如何在一个测功机上启动它。我正在尝试将“演示”应用程序从“ SecureSocial ”部署到 Heroku。我使用 IntelliJ-IDEA Heroku 插件将我的项目上传到 Heroku。我正在使用建议的“ Procfile ”,但我不知道如何让 Heroku 启动测功机。它的行为就像它不会启动,我不知道如何解决它。

我的 Procfile(在我的项目的根目录中)包含:

web: target/start -Dhttp.port=$PORT -DapplyEvolutions.default=true -Ddb.default.driver=
  org.postgresql.Driver -Ddb.default.url=$DATABASE_URL

也许我实际上还没有将我的代码上传到 Heroku,但我认为我已经上传了?我怎么知道?Heroku 似乎不允许我浏览代码。

我的 IntelliJ-IDEA Heroku 插件能够创建 Heroku 在线项目,所以我看不出它为什么不应该为我将代码推送到“ heroku master ”。我现在遇到的一个问题是命令行 git push 失败:

C:\IntelliJ IDEA 12.1.4\workspace\signup-sheet>git remote -v
heroku  git@heroku.com:signup-sheet.git (fetch)
heroku  git@heroku.com:signup-sheet.git (push)
origin  https://github.com/djangofan/signup-sheet.git (fetch)
origin  https://github.com/djangofan/signup-sheet.git (push)

C:\IntelliJ IDEA 12.1.4\workspace\signup-sheet>heroku login
Enter your Heroku credentials.
Email: djangofan@gmail.com
Password (typing will be hidden):
Authentication successful.

C:\IntelliJ IDEA 12.1.4\workspace\signup-sheet>heroku create
Creating nameless-depths-2834... done, stack is cedar
http://nameless-depths-2834.herokuapp.com/ | git@heroku.com:nameless-depths-2834.git

C:\IntelliJ IDEA 12.1.4\workspace\signup-sheet>git push heroku master
Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
C:\IntelliJ IDEA 12.1.4\workspace\signup-sheet>heroku releases
=== signup-sheet Releases
v2  Enable Logplex   djangofan@gmail.com  2013/06/12 21:37:43 (~ 10h ago)
v1  Initial release  djangofan@gmail.com  2013/06/12 21:37:42 (~ 10h ago)
4

2 回答 2

1

通过这条线

Permission denied (publickey).
fatal: Could not read from remote repository.

这似乎是与您的 Heroku git 存储库关联的公钥的问题。这个问题有你想要的答案。

于 2013-06-13T19:19:29.073 回答
1

虽然您可以仅使用 Heroku 帐户创建 Heroku 应用程序,但在您将公钥添加到 Heroku 之前,您无法部署任何代码。您可以使用 Heroku 工具带 ( http://toolbelt.heroku.com/ ) 和以下命令来判断是否添加了密钥:

heroku keys

如果您列出了多个键,或者不知道哪个键是正确的,您可以清除所有键并添加您知道正确的键。如果你只有一个键,那么你不需要指定它。

heroku keys:clear
heroku keys:add /path/to/public/key/for/heroku.pub

如果您的密钥被称为 id_rsa.pub 以外的其他名称,那么您可能需要创建一个 SSH 配置文件来定义应该用于 Heroku 的密钥

Host heroku.com
Hostname heroku.com
Port 22
IdentitiesOnly yes
IdentityFile ~/.ssh/heroku  # or what ever you called the public key
TCPKeepAlive yes
user name@email-address.com  # include the email address used for your heroku account

您现在应该能够将您的代码推送到 Heroku,从而创建一个“部署”版本,例如:

V6 部署 53u883u

谢谢

于 2013-06-14T08:52:36.710 回答