buffalo cli 必须先安装并配置好 path,否则 buffalo new、buffalo dev 均报 command not found;需确保 go ≥1.21、gopath 有效且 $gopath/bin 已加入 path,再通过 go install 或预编译二进制安装,最后验证 buffalo version 并成功运行 buffalo dev 打开欢迎页才算部署完成。

Buffalo CLI 必须先装好,否则 buffalo new、buffalo dev 全部报 command not found——这不是后续配置问题,是根本跑不起来的第一道门槛。
确认 Go 环境是否达标
Buffalo 是 Go 写的 CLI 工具,不是脚本包装器。低于 Go 1.21 的版本会直接让 go install 失败,或编译出不可用的二进制。
- 运行
go version,输出必须是go version go1.21.x或更高(推荐go1.26.0) - 运行
go env GOPATH,确保返回一个真实路径(如/home/user/go),这是go install默认放二进制的地方 - 检查
$GOPATH/bin是否已加入系统PATH:新开终端后执行echo $PATH,看是否含该路径;Windows 用户对应检查%GOPATH%\bin
安装 buffalo CLI 的两种可靠方式
别信“一键脚本”或第三方镜像源封装,官方只维护两种路径:源码编译安装(需 Go)或预编译二进制(无 Go 也可)。
Buffalo框架 1.0.1 版本源码包下载,适合需要错误处理改进、依赖更新、render.Download 注释和 request logger 调整的 v1 项目。
- 用
go install(推荐,Go 环境就绪时):go install github.com/gobuffalo/cli/cmd/buffalo@latest
成功后二进制落在$GOPATH/bin/buffalo,无需cd到任何项目目录 - 下载预编译包(无 Go 或网络受限时):
去 GitHub releases 页面 下载对应系统的buffalo_*.tar.gz(如buffalo_0.18.13_linux_amd64.tar.gz)
解压后把buffalo文件复制到/usr/local/bin/(Linux/macOS)或%PATH%中任一目录(Windows),再chmod +x赋权 - Windows 用户可用 Scoop:
scoop bucket add extras && scoop install buffalo,自动注册 PATH,省去手动配置
验证安装并避开 PATH 坑
这一步失败率最高,90% 卡在这里——不是没装上,是 shell 找不到。
- 必须关闭当前终端,新开一个,再运行
buffalo version;如果还报command not found,说明$GOPATH/bin(或你放二进制的目录)没进PATH - Linux/macOS:在
~/.bashrc或~/.zshrc末尾加一行export PATH="$GOPATH/bin:$PATH",然后source ~/.zshrc - Windows:系统属性 → 高级 → 环境变量 → 编辑
Path→ 新增一行填入%GOPATH%\bin - 验证成功标志:
buffalo version输出类似v0.18.13,且which buffalo(或where buffalo)能定位到路径
初始化项目并立刻跑通
装完 CLI 只是起点,真正“部署完成”的标志是能在本地看到页面,而不是生成一堆文件就结束。
- 新建空目录,
cd进去,运行buffalo new myapp(不要加--api,新手先跑全栈) - 进入
myapp/,运行buffalo db migrate(即使不用 DB,也得过这一关,否则buffalo dev启动时 panic) - 再运行
buffalo dev,看到日志里出现Starting application at http://127.0.0.1:3000,浏览器打开能显示欢迎页,才算部署闭环完成 - 注意端口冲突:
buffalo dev -p 4000可换端口;若页面空白但服务启动成功,大概率是前端构建失败,先忽略,重点确认 HTML 能加载
最容易被忽略的是 buffalo dev 启动前没跑 buffalo db migrate,它不会自动帮你做迁移,也不会友好提示“数据库未就绪”,而是直接在首次 HTTP 请求时 panic 并退出——这个错误不打日志,只卡在终端,得自己盯住控制台输出。










