Vagrant是一个基于Ruby的工具,用于创建和部署虚拟化开发环境。它使用Oracle的开源VirtualBox虚拟化系统,可以创建轻量级的,可重现的,便携的虚拟机环境。
其优势在于虚拟环境一次安装,可以分发给团队多人使用,快速统一团队开发环境,而且足够轻量级,占用资源少。
- 软件下载
下载地址:
Vagrant:
http://www.vagrantup.com/
VirtualBox:
https://www.virtualbox.org/wiki/Downloads
2. 软件安装
安装VirtualBox、Vagrant。安装完成后需要重启。
3. 部署Linux
以Ubuntu操作系统为例
- 使用命令行cmd来安装部署vagrant,点击【开始】菜单,在【运行】栏内输入cmd,打开命令提示符窗口,建立一个名为vagrant的工作目录,以D:Vagrant目录为例
C:UsersAdministrator>D:
D:>mkdir vagrant
D:>
- 使用Vagrant下载Ubuntu的VirtualBox镜像文件
vagrant box add
vagrant box add lucid32 http://files.vagrantup.com/lucid32.box
vagrant init
vagrant up
vagrant ssh
此时就可以使用ssh登录工具,例如putty登录了,默认登录配置为
IP:127.0.0.1
Port:2222
User:vagrant
Passwd:vagrant
- 支持vagrant的virtual box镜像有很多操作系统类型,可以到http://www.vagrantbox.es下载
4. 配置
vagrant虚拟环境默认仅支持私有网络private_network,只有宿主机和vagrant虚拟机能通讯,不能和其他设备进行通讯。我们搭建嵌入式Linux开发环境必须要与嵌入式设备进行通讯,那么必须启动public_network。
在Vagrant的工作目录,找到vagrantfile文件,找到
config.vm.network "public_network"
将其前面的注释符号“#”删掉,使虚拟机激活public_network服务。
配置完成后,重新加载一下vagrant虚拟机,,在命令提示行输入以下命令,重启虚拟机
vagrant halt
vagrant up
虚拟机启动时会自动申请局域网IP地址。
5.打包分发
在安装好tftpd服务器、nfs网络服务器、交叉编译环境及拷贝相关源码后,即可将虚拟环境打包分发给团队其他成员。
打包命令格式:
vagrant package --output NAME --vagrantfile FILE
举例:
vagrant package --output lucid32.box--vagrantfile Vagrantfile
(1)首先使用分发获得的box镜像创建虚拟机
解包命令格式:
vagrant box add [NAME] [BOX PATH]
举例:
vagrant box add lucid32 lucid32.box
(2)初始化虚拟机
vagrant init
(3)启动虚拟机,并激活SSH登录功能
vagrant up
vagrant ssh
6.常用指令
#移除虚拟机
vagrant remove [name]
#重启虚拟机
vagrant reload [name]
参考:
http://blog.csdn.net/jillliang/article/details/8251242
http://blog.csdn.net/zuopaide/article/details/41186325
http://www.csdn.net/tag/vagrant