vagrant搭建自己的虚拟开发环境
条评论vagrant其实是一个虚拟环境,他是我们平时使用的Virtualbox等虚拟机的一层封装,最为方便的地方是可以通过配置文件快速搭建一致的虚拟开发环境,非常利于开发人员进行测试和同步开发,避免了环境不同带来的问题。这里我使用的Fedora的cloud版进行的测试开发,使用其他的其实就是换一下box文件,过程是一样的。
安装Virtualbox
由于这篇博客写的太好了,这里就不再复述了。
搭建vagrant
安装最新版的vagrant要到官网上去下载:
我这里是用的fedora,所以就下载centos 64位的版本了,其他的可以根据自己的系统进行选择。
安装完直接使用rpm进行安装,假设下下来的安装包是vagrant.rpm
1 | sudo rpm -ivh vagrant.rpm |
安装完成后,可以输入vagrant测试一下看看安装成功了没有。
下载box文件
由于我这里使用的是本地的box文件,因此需要先下载box文件,这里的box文件其实就是虚拟机的镜像,vagrant支持本地的box和网络的box,也就是说你其实可以设置box文件的网络地址,让vagrant自己去找镜像。我下的fedora 23 cloud版的vagrant镜像,用的virtualbox,用了ustc的源,这里给个链接fedora23Cloud。
vagrant工作环境
vagrant的命令其实挺简单的,平时常用的就是几条。
初始化,启动虚拟机,ssh登录虚拟机,关闭虚拟机。
初始化
初始化做的事情是生成配置文件,配置文件对于vagrant非常重要,里面记录了vagrant的绝大部分配置,详细介绍在下一节,这里只提会用到的。假如我们已经下载了fedora的box文件(/path/fedora.box)进入工作文件夹后初始化:
1 | cd ~/workspace/vagrant_workspace/ |
这时候会生成Vagrantfile文件,这就是我们的配置文件了。
启动虚拟机
启动的命令如下:
1 | vagrant up |
此时会按照你的Vagrantfile文件的记录进行配置和启动,第一次启动的时候会进行安装,并在virtualbox里面登记虚拟机。
默认的网络配置只有内网连接,如果你想让你的虚拟机能够被其他的电脑访问到,你需要配置一下配置文件的网络配置,去掉下面一句话的#注释。
1 |
下面的命令能够让你的虚拟机重新加载配置文件,作用就相当于虚拟机重启,每次启动的时候配置文件都会被读入并进行配置。
1 | vagrant reload |
ssh登录
vagrant 自己配置了密钥等信息,可以直接通过下面的命令登录
1 | vagrant ssh |
登录后你会发现你的项目目录和虚拟机里的/vagrant文件目录是同步的,可以比较方便的传输数据。
关闭和销毁虚拟机
1 | vagrant halt |
上面的这句命令就是关机了。
如果你想销毁虚拟机使用下面这句话
1 | vagrant destroy |
配置文件详解
其实最详细的介绍在官网,这里只是就几个比较常用的设置介绍一下。
box 设置
1 | config.vm.box = "base" |
这里是指的我们指定的box名,vagrant init box时指定的box,如果没有,默认就是base。这里也可以是url给出的box,当vagrant up时就会按照地址去下载对应的box
网络设置
1 | config.vm.network "public_network" |
sync-folder
这个选项默认要求你安装vagrant-vbguest。设置前首先安装插件:
1 | vagrant plugin install vagrant-vbguest |
然后设置sync-folder变量到你想共享的文件夹。
本文标题:vagrant搭建自己的虚拟开发环境
文章作者:throneclay
发布时间:2016-03-19
最后更新:2022-08-03
原始链接:http://blog.throneclay.top/2016/03/19/vag/
版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 3.0 CN 许可协议。转载请注明出处!