Bun环境部署完全指南:从准备到精通
2026-03-16 05:47:04作者:房伟宁
Bun作为集JavaScript运行时环境、打包工具、测试运行器和包管理器于一体的现代化工具,提供了跨平台部署解决方案。本指南将通过准备、部署、验证和进阶四个阶段,帮助您完成Bun的环境配置与版本管理,实现高效开发工作流。
一、准备阶段:环境与工具就绪
验证系统兼容性
- Linux:内核5.6+(最低5.1),安装
unzip工具 - macOS:10.15+版本,支持x64/ARM架构
- Windows:10版本1809+,启用WSL2可提升体验
[!WARNING] 32位操作系统不支持Bun安装,需确认系统为64位架构
检查依赖组件
- Linux:
sudo apt install unzip(Debian/Ubuntu) - macOS:确保Xcode命令行工具已安装:
xcode-select --install - Windows:无需额外依赖,PowerShell 5.1+即可
获取安装资源
- 官方预编译二进制包(推荐)
- 包管理器渠道(npm/Homebrew/Scoop)
- Docker镜像(适合容器化部署)
[!TIP] 知识点卡片:Bun采用单一可执行文件设计,无需预先安装Node.js环境,可独立运行。
二、部署阶段:多平台安装实施
跨平台安装方法对比
| 操作系统 | 推荐安装方式 | 备用安装方式 | 适用场景 |
|---|---|---|---|
| Linux/macOS | `curl -fsSL https://bun.sh/install | bash` | brew install oven-sh/bun/bun |
| Windows | `powershell -c "irm bun.sh/install.ps1 | iex"` | scoop install bun |
| 跨平台 | npm install -g bun |
Docker容器 | 临时测试/CI环境 |
执行核心安装命令
Linux/macOS一键安装
# 安装最新稳定版
curl -fsSL https://bun.sh/install | bash
# 指定版本安装示例
curl -fsSL https://bun.sh/install | bash -s "bun-v1.0.0"
Windows PowerShell安装
# 基础安装命令
powershell -c "irm bun.sh/install.ps1|iex"
# 安装特定版本
iex "& {$(irm https://bun.sh/install.ps1)} -Version 1.0.0"
Docker容器部署
# 拉取镜像
docker pull oven/bun
# 运行交互式容器
docker run --rm -it oven/bun
[!WARNING] 使用npm安装时需确保Node.js版本≥14.0.0,且可能需要管理员权限
配置系统变量
Linux/macOS配置PATH
# 编辑shell配置文件(~/.bashrc或~/.zshrc)
export BUN_INSTALL="$HOME/.bun"
export PATH="$BUN_INSTALL/bin:$PATH"
# 使配置生效
source ~/.bashrc
Windows环境变量设置
# PowerShell命令配置用户环境变量
[System.Environment]::SetEnvironmentVariable(
"Path",
[System.Environment]::GetEnvironmentVariable("Path", "User") + ";$env:USERPROFILE\.bun\bin",
[System.EnvironmentVariableTarget]::User
)
[!TIP] 知识点卡片:PATH环境变量(系统命令搜索路径)配置后需重启终端生效,可通过
echo $PATH(Linux/macOS)或echo %PATH%(Windows)验证。
三、验证阶段:安装确认与问题排查
基础功能验证
# 验证版本信息
**bun --version**
# 运行测试脚本
bun run https://bun.sh/hello.js
环境完整性检查
# 检查Bun可执行路径
which bun # Linux/macOS
where bun # Windows
# 验证核心功能
bun repl # 启动交互式环境
bun install -h # 查看包管理命令帮助
环境验证流程
[!TIP] 知识点卡片:成功安装后,Bun会自动配置Shell补全脚本,新终端中可使用Tab键补全Bun命令。
四、进阶阶段:版本管理与优化配置
版本升级与切换
# 升级到最新稳定版
**bun upgrade**
# 安装Canary版本(每日构建)
bun upgrade --canary
# 回退到稳定版
bun upgrade --stable
版本管理流程
高级配置选项
# 创建全局配置文件
touch ~/.bunfig.toml
# 配置国内镜像源示例
echo 'npmRegistry = "https://registry.npmmirror.com"' >> ~/.bunfig.toml
卸载清理流程
# curl安装方式卸载
rm -rf ~/.bun
# Homebrew卸载
brew uninstall bun
# Windows PowerShell卸载
powershell -c ~\.bun\uninstall.ps1
[!TIP] 知识点卡片:Bun配置文件支持多种格式(.bunfig.toml/.json/.js),可通过
bun config命令管理配置项。
常见问题速查
安装问题
- "command not found":检查PATH配置或重启终端
- GLIBC版本错误:尝试musl版本二进制包
- 权限问题:避免使用sudo安装,或修复目录权限
性能优化
- 设置
BUN_DEBUG=1启用调试日志 - 通过
bun --smol减少内存占用(牺牲部分性能) - 使用
bun upgrade --ci在CI环境中静默升级
兼容性
- Node.js模块兼容:
bun install --no-save-dev - TypeScript支持:自动识别tsconfig.json,无需额外配置
- 环境变量:Bun遵循POSIX标准,可通过
.env文件加载
通过本指南,您已掌握Bun环境的完整部署流程,从系统准备到高级配置的全流程操作。Bun的单一可执行文件设计和丰富功能集,将为您的JavaScript开发工作流带来显著效率提升。
登录后查看全文
热门项目推荐
相关项目推荐
GLM-5智谱 AI 正式发布 GLM-5,旨在应对复杂系统工程和长时域智能体任务。Jinja00
GLM-5-w4a8GLM-5-w4a8基于混合专家架构,专为复杂系统工程与长周期智能体任务设计。支持单/多节点部署,适配Atlas 800T A3,采用w4a8量化技术,结合vLLM推理优化,高效平衡性能与精度,助力智能应用开发Jinja00
jiuwenclawJiuwenClaw 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。Python0192- QQwen3.5-397B-A17BQwen3.5 实现了重大飞跃,整合了多模态学习、架构效率、强化学习规模以及全球可访问性等方面的突破性进展,旨在为开发者和企业赋予前所未有的能力与效率。Jinja00
AtomGit城市坐标计划AtomGit 城市坐标计划开启!让开源有坐标,让城市有星火。致力于与城市合伙人共同构建并长期运营一个健康、活跃的本地开发者生态。01
awesome-zig一个关于 Zig 优秀库及资源的协作列表。Makefile00
项目优选
收起
deepin linux kernel
C
27
12
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
601
4.04 K
🔥LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解
Java
69
21
Ascend Extension for PyTorch
Python
440
531
AscendNPU-IR是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优
C++
112
170
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
1.46 K
823
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
922
770
暂无简介
Dart
846
204
React Native鸿蒙化仓库
JavaScript
321
375
openGauss kernel ~ openGauss is an open source relational database management system
C++
174
249

