如何将基于 Sinatra 的 Ruby 网络应用程序部署到 Heroku?

How can I deploy a Sinatra-based Ruby web app to Heroku?

如何将基于 Sinatra 的 Ruby 网络应用程序部署到 Heroku?

我有一个基于 Sinatra 的 web application。当我想在本地 运行 时,我会执行以下操作:

  1. 在命令行中,我转到目录 servers/dev
  2. 运行 thin start -R songcontest.ru

现在我想将相同的应用程序部署到 Heroku。我遵循了教程的前几个步骤 (step 1, step 2, step 3)。

现在我想 运行 git push heroku master,这是将应用程序部署到 Heroku 的下一步。当我这样做时,我收到以下错误消息:

remote:  !     Push rejected, no Cedar-supported app detected
remote: HINT: This occurs when Heroku cannot detect the buildpack
remote:       to use for this application automatically.
remote: See https://devcenter.heroku.com/articles/buildpacks

我该如何修复它(在 Heroku 上创建我的应用程序 运行)?

查看 Deploying Rack-based Apps heroku 文档。您需要一个 config.ru 文件,可能还需要一个 Procfile 来启动您的网络服务器。

从不同的分支部署到Heroku的master分支时,需要在push命令中指定分支:git push heroku heroku:master.