Go打包二进制文件

背景

众所周知,go语言可打包成目标平台二进制文件是其一大优点,如此go项目在服务器不须要配置go环境和依赖就可跑起来。linux

操做

需求:打包部署到centos7
笔者打包环境:mac os
方法:进入main.go所在目录,输入以下命令,当前目录便会生成main的可执行文件shell

CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build main.go

截屏2020-03-10下午11.45.52.png

Windows平台打包到Linux执行不同,须要输入以下命令segmentfault

set CGO_ENABLED=0
set GOOS=linux
set GOARCH=amd64
go build
  • CGO_ENABLED 表示不使用cgo
  • GOOS 表示目标平台系统(Windows,linux,darwin「mac os」等等)
  • GOARCH 表示目标系统架构(arm arm64 386 amd64 等等)

打包完成后,将二进制文件放到服务器系统,赋可执行权限:centos

chmod 773 main

直接运行便可:服务器

./main

或后台执行:架构

nohup ./main 1>info.log 2>&1 &

传送门:后台运行命令
如此即是go打包到linux平台的完整操做,欢迎你们指证。ui

相关文章
相关标签/搜索