商城首页欢迎来到中国正版软件门户

您的位置: 首页 > 文章列表 > 编程开发 > 怎样在centos上使用golang打包应用

怎样在centos上使用golang打包应用

  发布于2026-07-27 阅读(0)

扫一扫,手机访问

在CentOS上打包Golang应用,其实步骤比想象中要直白。先别急着看那堆命令行,把流程理清楚了,后面操作起来会顺手很多。下面就来拆解一下整个过程。

怎样在centos上使用golang打包应用

  1. 安装Golang——这事得先搞定。如果还没装,最简单的办法是用yum直接装:

    sudo yum install golang

    当然,如果追求最新版本或者想自己控制编译选项,也可以从官网下载源码包来装。这里以1.18.1为例:

    wget https://golang.org/dl/go1.18.1.linux-amd64.tar.gz
    sudo tar -C /usr/local -xzf go1.18.1.linux-amd64.tar.gz
    export PATH=$PATH:/usr/local/go/bin

    记得把go1.18.1换成你实际需要的版本号。装完之后顺手验证一下:go version,能正常输出版本就说明成了。

  2. 设置GOPATH和GOROOT——这两个环境变量决定了Go的工作模式和安装路径。GOROOT指向Go的安装目录,GOPATH则是你存放项目代码的地方。通常这么配:

    export GOROOT=/usr/local/go
    export GOPATH=$HOME/go
    export PATH=$PATH:$GOROOT/bin:$GOPATH/bin

    为了省事,把这几个export丢到~/.bashrc~/.bash_profile里,以后每次登录就自动生效了。

  3. 编写你的Golang应用——打开你趁手的编辑器,在$GOPATH/src/myapp目录下写代码。这一步没什么好说的,按你的业务逻辑来就行。

  4. 构建应用——进入应用目录,直接跑:

    go build -o myapp

    当前目录下就会生成一个名叫myapp的可执行文件。注意,默认是动态链接,如果目标环境依赖库齐全,直接用就行。

  5. 压缩可执行文件——要是想分发出去,体积越小越好。这时候可以请出upx这个压缩神器:

    sudo yum install upx
    upx --best myapp

    跑完再看,文件大小能缩掉不少,尤其对网络传输友好的场景特别实用。

  6. 创建启动脚本(可选)——如果打算把应用部署成服务,写个启动脚本会更规范。下面是一个典型的模板:

    #!/bin/bash
    # myapp.service
    # Start and stop script for the myapp application.
    case "$1" in
    start)
        echo "Starting myapp"
        /path/to/myapp &
        ;;
    stop)
        echo "Stopping myapp"
        pkill myapp
        ;;
    *)
        echo "Usage: /etc/init.d/myapp {start|stop}"
        exit 1
        ;;
    esac
    exit 0

    保存为/etc/init.d/myapp,然后给执行权限:

    sudo chmod +x /etc/init.d/myapp

    之后就可以用service myapp startservice myapp stop来控制了。

  7. 测试你的应用——打包部署之前,先在开发环境里跑一遍完整的测试,确保功能没问题。这一步省不了,否则后面出问题排查起来更头疼。

以上步骤在CentOS 7和CentOS 8上都能用,其它版本可能需要微调。另外,如果应用要部署到不同环境,建议考虑静态编译(CGO_ENABLED=0 GOOS=linux go build -a -ldflags '-s -w')或者直接上Docker容器,这样依赖问题就彻底解决了。

本文转载于:https://www.yisu.com/ask/53760432.html 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。

热门关注