Boxen套件幫你完成一鍵備份及新電腦部署
Boxen是GitHub內(nèi)部開發(fā)和使用的電腦環(huán)境部署套件,用于幫助新員工快速部署開發(fā)環(huán)境,只需運(yùn)行一行命令,半個(gè)小時(shí)內(nèi)即可將GitHub.com的開發(fā)環(huán)境部署到新電腦中。Boxen 當(dāng)前只能運(yùn)行在 Mac 環(huán)境下,官方已有近百個(gè)示例配置,包括運(yùn)行環(huán)境、常用軟件和游戲等。
Boxen能一鍵部署定制好的應(yīng)用套件,如果還其他需要手動(dòng)操作,那應(yīng)該是 Bug。Boxen 的原理是通過 Ruby 語言寫成的Puppet 配置工具,運(yùn)行特定的配置包來完成自動(dòng)化部署。Boxen 每次打開會(huì)自動(dòng)更新并運(yùn)行,并能自動(dòng)提交或者關(guān)閉相關(guān)的 GitHub Issues,以保證套件本身的簡單和可用性。
Boxen 用法就是在命令終端運(yùn)行一行命令,然后用你最喜歡用的那根手指輕點(diǎn)一下確認(rèn),稍等片刻就 OK:
比如 GitHub 公司使用的 Boxen 的配置可以一鍵安裝以下軟件和環(huán)境:
- 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 套件包含幾個(gè)部分:
- boxen/our-boxenGithub 官方在用的部署配置實(shí)例,可供套用和簡單修改
- boxen/boxen-web可運(yùn)行在 Heroku 云上的配置下載服務(wù)器端,用來存儲(chǔ)和分發(fā)配置
- boxen/puppet-template可供自定義配置的 Puppet 模塊,用來新增或者修改生成新配置
- Boxen 不僅適用于給程序員部署開發(fā)環(huán)境依賴、配置編輯器,也可以用來給爸媽設(shè)置播放器,壁紙等。其他用途還有保持開發(fā)環(huán)境同步、設(shè)置防火墻,恢復(fù)環(huán)境備份等。Boxen 以 MIT 協(xié)議開源。