唯一推荐方式是 go get -u github.com/gofiber/fiber/v2,需确保 Go 1.21+、GO111MODULE=on、项目含 go.mod,且应显式指定版本如 @v2.56.0 以保证构建可重现。

直接用 go get 安装 fiber/v2 是唯一推荐方式
Fiber 没有预编译二进制、不提供包管理器(如 apt/yum)安装渠道,go get -u github.com/gofiber/fiber/v2 是官方文档明确指定且唯一稳定可靠的安装路径。试图从 GitHub Releases 下载源码手动构建、或用 go install 加路径安装,会因缺少 module 初始化或版本解析失败导致 import 报错。
- 必须确保本地已安装 Go 1.21+(2026 年推荐 1.22.x),
go version能正常输出 - 项目目录下必须存在
go.mod文件;若没有,先运行go mod init your-project-name -
go get后会自动写入go.mod和go.sum,不要手动编辑这两文件
别在 GOPATH 模式下安装 Fiber
Go 1.16+ 默认启用 module 模式,GOPATH 已成历史。如果你的 go env GOPATH 仍被设为非空值,且项目不在 $GOPATH/src 下,go get 可能静默降级为 GOPATH 模式,导致 fiber 包无法被识别。现象是:编译时报 cannot find package "github.com/gofiber/fiber/v2",即使 go list -m all 显示已安装。
- 检查是否启用了 module 模式:
go env GO111MODULE应输出on - 临时禁用 GOPATH 影响:
GO111MODULE=on go get github.com/gofiber/fiber/v2 - 旧项目若长期在 GOPATH 下开发,建议新建目录、
go mod init迁移,而非强行兼容
CI/CD 流水线里要显式指定 Fiber 版本
默认 go get github.com/gofiber/fiber/v2 会拉取最新 patch 版本(如 v2.56.0 → v2.56.1),看似省事,实则破坏构建可重现性。某次部署突然失败,可能只是因为 Fiber 小版本更新悄悄改了中间件返回值类型或错误包装逻辑。
- 锁定版本:用
go get github.com/gofiber/fiber/v2@v2.56.0(以实际稳定版为准) - 验证锁定效果:
go list -m github.com/gofiber/fiber/v2输出应含明确版本号 - Docker 构建时,把
go.mod和go.sum提前 COPY 进镜像,避免每次 build 都触发网络依赖解析
go.mod 的存在和 GO111MODULE=on 的环境一致性——这两个点一旦出问题,所有后续调试都在绕弯。


















