为了账号安全,请及时绑定邮箱和手机立即绑定

我的 Go 服务器无法在 Cloud Foundry 中启动

我的 Go 服务器无法在 Cloud Foundry 中启动

Go
炎炎设计 2021-12-20 19:01:56
我有一个简单的 GO 服务器,我试图将它推送到 Bosh lite(Vagrant + Virtual box)上的云代工厂。这是我的 go 应用程序的源代码设置:~/workspace/src/github.com/me/(父目录)-Godeps-weight weight.go <-- 主文件。清单文件.yml配置文件我的 weight.go 是一个简单的服务器,可以监听 9000。1) manifest.yml 看起来像这样。applications:- name: weight  memory: 128MB  instances: 12 ) Procfile 看起来像这样。worker: bin/weight3)我使用默认的buildpack。4 ) 当我用 cf push weight -c "./bin/weight;sleep 1d" 推送我的应用程序时,我得到:我试过设置cf set-env weight PORT 9000没有成功,我是不是在用 manifest 和 yaml 做一些时髦的事情?weight.go 在本地运行。代码 :func main (){    http.HandleFunc("/weight", weightHandler)    err:=http.ListenAndServe("localhost:"+getPort(), nil)    if err != nil {        fmt.Println("got an err ")        log.Fatalln(err)    }else{        fmt.Println("Apparently it works ?")    }    //fmt.Println("Hi")    //time.Sleep(1*time.Hour)}func getPort() string {    var port string    if port = os.Getenv("PORT"); len(port) == 0 {        fmt.Println("Didn't Found it")        fmt.Println(port)        port = DEFAULT_PORT    }else{        fmt.Println("Gotim")        fmt.Println(port)    }    return port}我确实得到了随机 PORT CF 分配的日志,仍然停留在2016-03-13T16:58:40.90-0700 [API/0]      OUT App instance exited with guid e5d417bd-c38d-4239-aa61-e9ca67fce79a payload: {"cc_partition"=>"default", "droplet"=>"e5d417bd-c38d-4239-aa61-e9ca67fce79a", "version"=>"8d7e80b3-69d5-4c83-9d37-1159d5deeba8", "instance"=>"14223d325c204406b87a131c065c16cc", "index"=>0, "reason"=>"CRASHED", "exit_status"=>-1, "exit_description"=>"failed to accept connections within health check timeout", "crash_timestamp"=>1457913520}*已修复:问题是在本地主机上侦听,我没有指定 IP,我很高兴 *
查看完整描述

1 回答

?
慕容3067478

TA贡献1773条经验 获得超3个赞

来自关于故障排除的 Cloud Foundry 文档:

确保您的应用程序代码使用PORT环境变量。您的应用程序可能会失败,因为它正在侦听错误的端口。不要对应用程序侦听的端口进行硬编码,而是使用PORT环境变量。[来源]

来自关于环境变量的 Cloud Foundry 文档:

应用程序应在其上侦听请求的端口。Cloud Foundry 运行时为应用程序的每个实例动态分配一个端口,因此获取或使用应用程序端口的代码应通过 PORT 环境变量引用它。[来源]

因此,与其将您的应用程序硬编码为侦听端口 9000,它应该侦听PORT环境变量指定的端口,如果未设置该环境变量,则可以默认为 9000。


查看完整回答
反对 回复 2021-12-20
  • 1 回答
  • 0 关注
  • 170 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信