我是heroku的新手,我想让人们通过“部署到heroku”按钮在他们自己的实例上轻松地安装我的应用程序,就像这里描述的https://devcenter.heroku.com/articles/heroku-button。
我现在已经在我的开发分支上创建了一个app.json:https://github.com/scribble-rs/scribble.rs/blob/develop/app.json
{
"name": "Scribble.rs",
"description": "A multiplayer drawing game for the browser",
"repository": "https://github.com/scribble-rs/scribble.rs",
"keywords": ["game", "multiplayer", "ephemeral"]
}但是,通过调用https://dashboard.heroku.com/new?template=https%3A%2F%2Fgithub.com%2Fscribble-rs%2Fscribble.rs%2Ftree%2Fdevelop实际测试按钮将导致Heroku运行go-projects的默认构建过程。但是,由于生成的二进制文件不包含运行应用程序所需的资源,因此应用程序将构建,但在启动时会崩溃。
为了解决这个问题,我需要使用docker-buildpack来运行它。然而,我真的找不到任何关于这个特定用例的文档,尽管它看起来很一般。要使用应用程序"Deploy“选项卡上的GitHub-connection通过GitHub进行部署,您可以指定一个heroku.yml,我就是这么做的:https://github.com/scribble-rs/scribble.rs/blob/develop/heroku.yml
build:
docker:
web: Dockerfile然而,在点击部署的情况下,这个文件似乎被忽略了,我应该做的是通过app.json显式地指定一个构建包。虽然我发现了一些带有docker-buildpacks的GitHub存储库,但我有点不喜欢这种解决方案,因为我必须信任一些随时可能崩溃或消失的随机存储库。
解决这个问题的最佳方法到底是什么?
发布于 2020-04-17 03:27:58
似乎您必须在app.json中指定stack。通过阅读文档,这一点并不是很清楚:https://devcenter.heroku.com/articles/app-json-schema#stack
我已将其设置为:
"stack": "container"https://stackoverflow.com/questions/61236054
复制相似问题