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

您的位置: 首页 > 文章列表 > 编程开发 > Ubuntu下如何用Golang打包Web应用

Ubuntu下如何用Golang打包Web应用

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

扫一扫,手机访问

在Ubuntu上把Golang写的Web应用打包成一个可执行文件,说穿了很简单,但也有些细节需要注意。下面就把完整的流程拆开讲清楚。

Ubuntu下如何用Golang打包Web应用

1. 安装Golang

首先要确保系统里有Go环境。如果还没装,一条命令搞定:

sudo apt-get update
sudo apt-get install golang-go

装完之后验证一下:go version,看到版本号就算成了。

2. 设置GOPATH和GOROOT

接下来需要配置两个环境变量,否则后续编译会找不到路径。打开~/.bashrc~/.profile,在末尾加上:

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

保存后记得执行source ~/.bashrcsource ~/.profile才能生效。注意,如果Go是通过其他方式安装的(比如从官网下载的二进制包),GOROOT的值需要对应实际路径,别直接照抄。

3. 创建Web应用

新建一个项目目录:

mkdir my-web-app
cd my-web-app

然后创建一个main.go,写一个最简单的HTTP服务器

package main

import (
    "fmt"
    "net/http"
)

func main() {
    http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
        fmt.Fprintf(w, "Hello, World!")
    })
    http.ListenAndServe(":8080", nil)
}

这段代码在根路径返回“Hello, World!”,端口是8080。先跑一下试试:go run main.go,浏览器访问http://localhost:8080能看见内容,说明应用没问题。

4. 打包Web应用

打包的关键是指定目标操作系统和架构。比如我们要在Linux 64位系统上运行,就执行:

GOOS=linux GOARCH=amd64 go build -o my-web-app main.go

这条命令会在当前目录生成一个名为my-web-app的可执行文件。注意-o后面是输出文件名,可以随意起。如果想在Windows或Mac上交叉编译,只需把GOOS改成windowsdarwinGOARCH改成对应的架构(比如arm64)。

5. 运行打包后的Web应用

直接在终端执行:

./my-web-app

这种程序会默认在前台运行,按Ctrl+C停止。如果想让它后台运行,可以用nohup ./my-web-app &,或者用systemd服务管理。

6. 部署Web应用

打包好的my-web-app文件就是一个独立的二进制文件,不依赖Go环境,也不依赖任何额外的运行时。把它复制到目标服务器上,赋予执行权限,直接运行即可。这才是Go的真正优势——单文件部署,零依赖。

当然,实际生产环境通常还会涉及配置文件、静态资源、日志管理等,但核心的打包流程就是上面这几步。把这一步摸透,后续再多复杂的项目也能举一反三。

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

热门关注