我目前正在尝试使用wercker将Go应用程序部署到Heroku。Heroku希望main.go位于存储库根目录中,但如果可能的话,我希望存储库目录看起来像这样。
project/
cmd/
my-server/
main.go
lib1/
lib2/
Procfile
...
理想情况下,我希望Procfile看起来像这样:
web: my-server -port $PORT
我已经阅读了这篇文章,但是由于我正在使用wercker Go框部署到Heroku,所以我不确定什么是配置它的最佳方法。是否已经成功部署了这样的应用程序?
您正在为Go项目使用文件结构,该文件结构不允许您godep
在构建过程中使用它,从而使其运行速度大大降低。
鉴于此,您需要创建一个.godir
,以指定流程所在的模块名称。
创建.godir
具有以下内容的文件:
project/cmd/my-server
并保持您的Procfile不变:
web: my-server -port $PORT
我什至无需提及您需要使用Go自定义buildpack:https : //github.com/kr/heroku-buildpack-go.git
使用此.godir
文件,您将能够推送和部署您的应用程序。
有关godep
自定义buildpack用法的更多信息,请查阅本指南[1]。
[1] http://mmcgrana.github.io/2012/09/getting-started-with-go-on-heroku.html
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句