有人试过使用 Dokku 部署 Revel 应用吗?
我尝试了“https://www.digitalocean.com/community/tutorials/how-to-use-the-dokku-one-click-digitalocean-image-to-run-a-go-app”并且部署成功。
但是,当我尝试一个新的 Revel 应用程序时,它给了我这个错误
remote: mv: cannot stat `/build/app/.heroku/g/bin/*': No such file or directory
这是我创建的 .godir:
myappname
这是过程文件:
myappname
我做错了什么?
谢谢
最佳答案
由于 Revel 是一个网络应用程序(接收传入的 HTTP 流量),您需要在您的 Procfile 中声明一个 web 进程类型,即:
web: myappname ## Procfile requires a Unix process declaration
这会告诉 Dokku 要运行什么命令来启动服务器上的 Web 进程——在本例中是在项目根目录中的 myappname.go。
在 Procfile 中保留 .go 文件扩展名。
Dokku 是一个“Docker 驱动的迷你 Heroku”,因此 Heroku 的支持文档是相关的:
The unix process model is a simple and powerful abstraction for running server-side programs. Applied to web apps, the process model gives us a unique way to think about dividing our workloads and scaling up over time. The Heroku Cedar stack uses the process model for web, worker and all other types of dynos.
-- from Process Types and the Procfile - Heroku Dev Center
请注意,Heroku/Dokku 的标准 Go Buildpack 需要 Godeps目录,或包含 .godir 文件的弃用方法。
关于go - 使用 Dokku 部署 Revel (Golang),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24953766/