在学习区块链项目 Hyperledger Fabric时,因为他们使用了Vagrant作为虚拟机,所以,就先学习了一下Vagrant,下面是vagrant的安装教程。
概述
Vagrant是一个基于Ruby的工具,用于创建和部署虚拟化开发环境。它使用Oracle的开源VirtualBox虚拟化系统,使用 Chef创建自动化虚拟环境。
下载
官网https://www.vagrantup.com/downloads.html下载比较慢,当前版本为 1.8.6
另外,需要下载并安装VirtualBox
安装
这一步简单,下载了安装包,点开安装即可。路径可以自己定制。
添加镜像
新建一个文件夹为工作目录并且打开
mkdir Workspace
cd Workspace
下载一个virtualbox镜像,我们可以到https://github.com/chef/bento上下载一个镜像。
我下载的是virtual box版的centos 7.2.box
下载速度太慢(几kb...),时间会比较长,我的做法是先离线下载到百度云,再从百度云上用IDM下载
下载完后,将box添加到vagrant,如下:
vagrant box add centos7 ../Boxes/opscode_centos-7.2_chef-provisionerless_2.box
centos7
是box的名称
初始化
box有了以后,我们就可以到我们的工作空间去初始化开发环境了
vagrant init centos7
初始化完成后,当前目录下会生成一个Vagrantfile,这是vagrant的配置文件,我们可以通过这个文件来对vagrant进行配置。
启动环境
使用以下命令启动环境:
vagrant up
终端会显示启动过程。这时候打开virtualbox,可以有一个default虚拟机正在运行。
在启动信息中,有类似下面的字样:
default: SSH address: 127.0.0.1:2222
default: SSH username: vagrant
这个就是登录系统所需信息了。
SSH地址:127.0.0.1
SSH端口:2222
用户名:vagrant
登录系统
启动完成后,如果是Linux用户,可以通过
vagrant SSH
来登录系统。
如果是Windows用户,可以通过Putty、Xshell等软件登录系统。
登录信息如前所述,密码(默认密码)为:vagrant。
打包分发
好了,接下来就可以到虚拟机中各种折腾,安装好开发环境进行开发了。
配置好开发环境后,退出并关闭虚拟机。开始对开发环境打包:
vagrant package
打包完成后,就会生成一个package.box,改个名字后就可以分发给其他人了。其他用户拿到box后,就可以向初始化
这一步一样,先添加box,然后init,就可以方便地得到一个一样的开发环境了。
有关vagrant的高级用法,可以通过看Vagrantfile文件,里面有较为详尽的注释。也可以访问这个网址:https://www.vagrantup.com/docs/cli/index.html