Vagrant:快速打造跨平台开发环境,从此告别繁琐操作

关于Vagrant: Vagrant是一个基于Ruby的工具,用于创建和部署虚拟化开发环境。它 使用Oracle的开源VirtualBox虚拟化系统,使用 Chef创建自动化虚拟环境。
怎么理解呢? 你可以理解为Vagrant 就是一个虚拟机。做Web开发离不开需要搭建一堆的开发和测试环境。 频繁的搭建开发环境很浪费时间。另外有些情况,公司里既有在Window环境下开发的,又有在MacOS 或者 Linux下开发。跨平台开发环境的需求就有了今天的Vagrant。 Vagrant官网
https://www.vagrantup.com/

以下是具体的步骤

1.下载并安装VirtualBox

2.下载并安装Vagrant

3.下载并安装系统镜像文件(这里以CentOS 6.5为例)

4.初始化Vagrant Box
vagrant init nrel/CentOS-6.5-x86_64 在初始化之后会在当前目录下生成Vagrantfile,这就是vagrant的配置文件,可以修改这个配置文件进行一些个性化的定制,比如网络连接方式,共享的目录等。

5.启动Vagrant Box
vagrant up --provider virtualbox

6.关闭Vagrant Box
vagrant halt boxname

7.如果你有自己的虚拟镜像文件需要导入
vagrant box add /PATH/TO/BOX

8.导出自己的镜像文件
vagrant package --output /PATH/TO/BOXNAME.box

9.ssh连接Vagrant虚拟主机
vagrant ssh

当前目录下若存在同名package.box则会export失败。打包的来源并不是.vagrant.d而是VirtualBox虚拟机本身,可以通过--base vm-name来指定所导出的虚拟机名称,--vagrantfile file-pathname可以将Vagrantfile直接封进box中。以后就可以把这个 .box 文件分发给开发人员使用了。

其他命令 vagrant suspend将虚拟机置于休眠状态。这时候主机会保存虚拟机的当前状态。再用vagrant up启动虚拟机时能够返回之前工作的状态。这种方式优点是休眠和启动速度都很快,只有几秒钟。缺点是需要额外的磁盘空间来存储当前状态。

vagrant halt则是关机。如果想再次启动还是使用vagrant up命令,不过需要多花些时间。

vagrant destroy则会将虚拟机从磁盘中删除。如果想重新创建还是使用vagrant up命令。

vagrant reload从Vagrantfile重新启动虚拟机。

vagrant global-status输出所有虚拟机当前运行状态,关机、已启动等。

沙丁鱼爱吃面包

我是一个粉刷匠