部署Go语言程序到Linux服务器

通过前面的学习相信大家对Go语言已经有了一定的了解,平时我们都是在本地进行开发调试访问的。那要怎么打包到服务器上呢?下面通过一个简单的实例来给大家介绍一下如何把我们写好的Go语言程序发布到服务 Linux 服务器上。

下面所示的是我们在 Windows 系统下开发的代码:
package main

import (
    "fmt"
    "log"
    "net/http"
)

func sayHello(w http.ResponseWriter,r *http.Request) {
    fmt.Fprintf(w,"C语言中文网")
}
func main() {
    http.HandleFunc("/",sayHello)
    log.Println("启动成功,可以通过 localhost:9000 访问")
    err := http.ListenAndServe(":9000",nil)
    if err != nil {
        log.Fatal("List 9000")
    }
}
代码已经写好了,现在需要编译了,由于是 window 环境编译到 linux 下运行,所有涉及到跨平台编译。

编译代码命令如下所示:

set GOARCH=amd64   //设置目标可执行程序操作系统构架,包括 386,amd64,arm
set GOOS=linux           //设置可执行程序运行操作系统,支持 darwin,freebsd,linux,windows
go build ./main.go       //打包

注意:使用 Window 10 系统的小伙伴必须用 cmd 工具执行上述命令,不能使用 powershell。

OK,编译完成后会生成一个 main 可执行文件,没有后缀,这时只需要把这个文件上传到你的虚拟机,直接运行就好了。


运行后如果出现上图的效果,就说明已经运行起来了。这时打开你的浏览器访问服务器的 IP:9000 就能看到如下图的内容了


好啦!就这么简单,不需要任何语言环境,像 java 程序需要在服务器安装 java,php 需要安装 Apache,PHP 等运行环境,go 统统不需要,只需要一个 linux 系统将编译好的代码扔上去就可以了。

相关文章

类型转换 1、int转string 2、string转int 3、string转float ...
package main import s "strings" import...
类使用:实现一个people中有一个sayhi的方法调用功能,代码如...
html代码: beego代码:
1、读取文件信息: 2、读取文件夹下的所有文件: 3、写入文件...
配置环境:Windows7+推荐IDE:LiteIDEGO下载地址:http:...