上传并将Golang应用程序部署到VPS

时间:2014-12-17 04:35:26

标签: deployment go web-deployment production

我做了一个Go应用程序,当我在本地运行exe时,它运行正常。我在哪里上传到我的VPS? public_html / domain.com / somefolder?或/ usr / somefolder使用SSH?

我有我的应用程序,我的.exe和src文件,但是当我在VPS上在线部署时,我该怎么办?我无法找到关于此的教程,所以我希望你能帮助我。

  1. 上传我的src文件夹中的所有文件,包括我写“go build”时的二进制文件?
  2. 上传到我的VPS上的哪个位置?使用ssh或cpanel / ftp程序还是什么?
  3. 在您自己的本地Windows 8计算机上“go build”到在linux服务器上在线上传和运行它的步骤是什么?

    的PS。

    另外CentOS 5.1.1虽然不支持https://golang.org/doc/install - 允许我在我的VPS上运行已经linux编译的go程序,这只是意味着我无法安装Go并在CentOS 5上进行编译.x服务器? CentOS 5.1.1会解释运行命令“./ [filename]”时shh给出的“分段错误”错误吗?

2 个答案:

答案 0 :(得分:1)

嗯,通常,你会:

  • 复制您创建的二进制文件+所有资源文件(html,css,images,...)
    • (也可选择源代码)
  • 有办法确保程序继续运行
    • crontab可以用来检查你的程序是否还活着,但是一个简单的监控程序就足够了(你可以自己编写)
  • 以非特权用户身份运行二进制文件
    • (如果需要,您也可以将其与Docker结合使用)

将它放在public_html/domain.com/somefolder中是没有意义的,因为它不是公共HTML代码。除非使用您创建的应用程序/二进制文件,否则您希望将文件放在某处无法访问。


对于我的故事没有简洁的源链接,我深表歉意。但是,这似乎是最好的事情。


另一个重要说明: 即使您的VPS可能运行Windows,您也可以将Linux二进制文件部署到Linux VPS(价格大大降低) - 查看this SO question

答案 1 :(得分:0)

我写的关于在osx上编写golang app并在Linux服务器上部署的简短说明:http://kumargaurav.co/2016/08/10/deploy-go-lang-app-linux-server/