将Go webserver部署到Google计算引擎

时间:2016-01-03 19:48:55

标签: http go server google-compute-engine

我刚刚开始测试Google计算引擎。现在我正在尝试在其上部署我的Go(golang)应用程序,以便可以从外部访问它。我使用计算引擎支持app引擎,因为我的应用程序需要一个MongoDB数据库。

我做了以下事情:

  1. 创建计算引擎实例
  2. 设置防火墙,以便端口1234打开,IP是静态的
  3. 安装MongoDB
  4. 上传我的申请
  5. 启动
  6. 应用程序启动就好了。但如果我在浏览器中使用ip:1234打开它,我无法从外部访问它。我也尝试以root用户身份在端口80上启动它,但这也不起作用。

    服务器配置如下:

    {
        "host": "localhost:1234",
        "dbhost": "localhost",
        "db": "dbname",
        "logfile": "log"
    }
    

    当我使用apache服务器时,它服务器端口80并显示页面...操作系统是ubuntu 14.04。

    主要简单地将一些处理程序添加到多路复用器并将FileServer添加到公共目录:

    mux.Handle("/", http.FileServer(http.Dir(public_dir)))
    // [...]
    if err := http.ListenAndServe(cfg.Host, mux); err != nil {
        panic(err)
    }
    

    那么这里的问题是什么?

1 个答案:

答案 0 :(得分:5)

尝试将hostlocalhost更改为0.0.0.0,因为现在它只是在收听“内部”请求。