go web 部署

go web 部署

  • 交叉编译
    go 语言有个强大的地方就是 交叉编译

    • windows ——cmd
      • 设置环境变量-mac

        SET CGO_ENABLED=0
        SET GOOS=darwin
        SET GOARCH=amd64

      • 设置环境变量-linux

        SET CGO_ENABLED=0
        SET GOOS=linux
        SET GOARCH=amd64

        然后go build 即可

    • windows——powershell
      powershell的设置环境变量的方法是$env:
      • 设置环境变量-mac

        $env:CGO_ENABLED=0
        $env:GOOS=“darwin”
        $env:GOARCH=“amd64”

      • 设置环境变量——linux

        $env:CGO_ENABLED=0
        $env:GOOS=“linux”
        $env:GOARCH=“amd64”

  • 部署
    编译完成之后,部署比较简单(只是go程序本身部署)
    将编译好的文件放在对应平台下,直接运行即可,若考虑负载什么的,可用nginx部署

    • 后台运行
      大部分情况下,我们都是利用各种工具远程linux服务器,加入我们的程序名称是goweb,直接运行后,关闭远程标签则可能程序退出,所以需要设置后台运行。

      nohup ./goweb &> goweb.log

      意思是设置后台运行并将输出写入当前路径名为goweb的文件中

    • 注:
      注意ip的设置,127.0.0.1 只是本机内网的访问,0.0.0.0可外网访问

附录

  • 各平台的GOOS和GOARCH参考

    OS ARCH OS version
    linux 386 / amd64 / arm >= Linux 2.6
    darwin 386 / amd64 OS X (Snow Leopard + Lion)
    freebsd 386 / amd64 >= FreeBSD 7
    windows 386 / amd64 >= Windows 2000

你可能感兴趣的:(go)