Boxen是GitHub内部开发和使用的电脑环境部署套件,用于帮助新员工快速部署开发环境,只需运行一行命令,半个小时内即可将GitHub.com的开发环境部署到新电脑中。Boxen 当前只能运行在 Mac 环境下,官方已有近百个示例配置,包括运行环境、常用软件和游戏等。
Boxen能一键部署定制好的应用套件,如果还其他需要手动操作,那应该是 Bug。Boxen 的原理是通过 Ruby 语言写成的Puppet 配置工具,运行特定的配置包来完成自动化部署。Boxen 每次打开会自动更新并运行,并能自动提交或者关闭相关的 GitHub Issues,以保证套件本身的简单和可用性。
Boxen 用法就是在命令终端运行一行命令,然后用你最喜欢用的那根手指轻点一下确认,稍等片刻就 OK:
比如 GitHub 公司使用的 Boxen 的配置可以一键安装以下软件和环境:
- Homebrew
- Git
- Hub
- DNSMasq w/ .dev resolver for localhost
- NVM
- RBenv
- Full Disk Encryption requirement
- NodeJS 0.4
- NodeJS 0.6
- NodeJS 0.8
- Ruby 1.8.7
- Ruby 1.9.2
- Ruby 1.9.3
- Ack
- Findutils
- GNU-Tar
Boxen 套件包含几个部分:
- boxen/our-boxenGithub 官方在用的部署配置实例,可供套用和简单修改
- boxen/boxen-web可运行在 Heroku 云上的配置下载服务器端,用来存储和分发配置
- boxen/puppet-template可供自定义配置的 Puppet 模块,用来新增或者修改生成新配置
- Boxen 不仅适用于给程序员部署开发环境依赖、配置编辑器,也可以用来给爸妈设置播放器,壁纸等。其他用途还有保持开发环境同步、设置防火墙,恢复环境备份等。Boxen 以 MIT 协议开源。