游乐游手机版
首页/编程语言/文章详情

如何在Ubuntu中使用Golang进行Web开发

时间:2026-05-04 22:19
想在Ubuntu系统里用Golang搞Web开发?这事儿其实没想象中那么复杂。跟着下面这几个清晰的步骤走,从环境搭建到“Hello, World!”上线,再到框架选型和项目部署,你都能一气呵成。 1 安装Golang 万事开头先安环境。在Ubuntu上安装Golang,最直接的方法就是通过包管理器

想在Ubuntu系统里用Golang搞Web开发?这事儿其实没想象中那么复杂。跟着下面这几个清晰的步骤走,从环境搭建到“Hello, World!”上线,再到框架选型和项目部署,你都能一气呵成。

如何在Ubuntu中使用Golang进行Web开发

1. 安装Golang

万事开头先安环境。在Ubuntu上安装Golang,最直接的方法就是通过包管理器。打开终端,依次执行下面这两条命令:

sudo apt update
sudo apt install golang-go

命令跑完,怎么确认安装成功了呢?很简单,敲入下面这个命令,看看它会不会乖乖地返回当前的Go版本号:

go version

2. 设置工作目录

环境有了,得给代码找个“家”。建议专门创建一个目录来存放你的所有Go项目,这样管理起来会清爽很多。比如,可以在你的用户目录下创建一个:

mkdir ~/go-workspace
cd ~/go-workspace

3. 创建一个新的Web项目

进入工作空间,就可以开始创建第一个项目了。从一个简单的Go文件开始,比如就叫它 main.go

touch main.go

4. 编写Web服务器代码

接下来是核心环节——写代码。用你喜欢的文本编辑器打开刚创建的 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!")
    })
    fmt.Println("Starting server at port 8080")
    if err := http.ListenAndServe(":8080", nil); err != nil {
        fmt.Println(err)
    }
}

5. 运行Web服务器

代码写完,是时候看看效果了。回到终端,确保你在项目目录下,然后运行:

go run main.go

如果一切顺利,终端会显示:

Starting server at port 8080

好了,现在打开你的浏览器,访问 https://localhost:8080。怎么样?页面上是不是赫然出现了那句经典的“Hello, World!”?第一个Go Web应用就这么跑起来了。

6. 使用框架(可选)

当然,直接用标准库写服务是理解底层的好方法,但对于实际项目开发,借助一个成熟的Web框架往往能事半功倍。它们能帮你处理好路由、中间件、参数绑定等一大堆琐事。Go社区里就有不少优秀的选择:

  • Gin: 以高性能著称的HTTP Web框架,生态丰富。
  • Echo: 同样追求高性能,设计极简,API很友好。
  • Beego: 更像一个全栈式的框架,自带ORM、缓存等众多工具,开箱即用。

这里以Gin为例,看看如何让我们的问候程序“框架化”。

安装Gin框架

首先,通过Go模块获取Gin:

go get -u github.com/gin-gonic/gin

使用Gin编写Web服务器

然后,把之前的 main.go 内容替换成下面这样:

package main

import (
    "github.com/gin-gonic/gin"
)

func main() {
    r := gin.Default()
    r.GET("/", func(c *gin.Context) {
        c.String(200, "Hello, World!")
    })
    r.Run(":8080")
}

保存文件,再次运行:

go run main.go

用浏览器访问同样的地址 https://localhost:8080,你会得到完全相同的结果,但背后的代码结构是不是清晰简洁多了?这就是框架的魅力。

7. 构建和部署

开发调试完毕,准备部署上线了。Go语言的一个巨大优势就是可以编译成独立的可执行文件。在你的项目目录下执行:

go build -o myapp main.go

这条命令会生成一个名为 myapp 的二进制文件。这个文件不依赖任何运行时环境,你可以直接把它扔到任何Linux服务器上,运行 ./myapp,你的Web服务就启动了。部署过程如此简单,正是Go适合云原生和微服务场景的原因之一。

总结

从在Ubuntu上安装Go环境开始,到建立工作目录、编写第一个服务器程序、运行测试,再到引入主流框架优化代码结构,最后打包部署——这一套流程走下来,可以说已经摸到了Golang Web开发的门道。每一步都稳扎稳打,剩下的,就是在具体的项目实践中去深入探索路由、数据库、模板渲染等更丰富的功能了。动手试试吧,你会发现这一切都非常直接和高效。

来源:https://www.yisu.com/ask/26310819.html
上一篇如何利用 Stream.distinct() 去除集合流中的重复元素 下一篇Golang在Ubuntu中如何进行单元测试
本站内容用于信息整理与展示,如有侵权或内容问题请及时联系处理。

相关推荐

补充同频道和同主题内容,方便继续浏览更多相关内容。

同类最新

继续查看同栏目最近更新的文章。

更多
CentOS与Golang打包常见兼容性问题探讨
编程语言 · 2026-07-01

CentOS与Golang打包常见兼容性问题探讨

CentOS与Golang打包的兼容性问题集中在glibc版本不匹配、交叉编译环境变量错误、依赖库缺失及Go依赖管理不规范。可通过Docker容器编译、选择兼容Go版本、正确设置GOOS GOARCH环境变量、安装对应开发包及使用GoModules解决。

CentOS中Fortran与Python如何协同工作从入门到实战完整教程
编程语言 · 2026-07-01

CentOS中Fortran与Python如何协同工作从入门到实战完整教程

在CentOS中,Fortran与Python可通过f2py、SWIG、共享库调用或subprocess协同。f2py封装Fortran为Python模块,支持数组运算;共享库需手动对齐数据类型;系统调用适合独立计算。

CentOS中Golang打包优化方法
编程语言 · 2026-07-01

CentOS中Golang打包优化方法

在CentOS中优化Golang编译打包,可显著提升编译速度并减小二进制文件体积。关键技巧包括:设置环境变量、使用Go模块管理依赖、编译时添加-ldflags= "-s-w "去除调试信息、利用UPX工具压缩、运行strip清理符号表,以及优化cgo内C代码的编译选项。综合运用这些方法能有效优化最终程序。

在CentOS系统中cpustat与其他工具协同使用的完整方法
编程语言 · 2026-07-01

在CentOS系统中cpustat与其他工具协同使用的完整方法

cpustat作为sysstat包的CPU监控工具,可通过管道与grep等命令配合过滤数据,利用脚本自动记录带时间戳的日志,或结合图形工具查看,也可格式化输出后接入Zabbix、Grafana等Web监控系统,实现可视化与告警。

CentOS中readdir与其他Linux发行版的差异
编程语言 · 2026-07-01

CentOS中readdir与其他Linux发行版的差异

CentOS基于RHEL,与Ubuntu、Debian、Fedora在包管理器(yum dnfvsapt)、默认文件系统(XFSvsext4)等存在差异,但readdir等系统调用遵循POSIX标准,行为一致。