Vagrant 是一款用来构建虚拟开发环境的工具,非常适合 php/python/ruby/java 这类语言开发 web 应用,“代码在我机子上运行没有问题”这种说辞将成为历史。
我的是在win7系统下安装 vagrant 进行代码环境的复制,保证代码在多机运行正常,以下是安装步骤:
1、下载安装 virtualbox,https://www.virtualbox.org/wiki/Downloads ,我的版本是 VirtualBox-4.3.22-98236-Win,先安装这个。
2、下载安装 vagrant,https://www.vagrantup.com/ ,我的版本是 vagrant_1.7.2 。
3、下载安装 box,可以自己在线下载(很慢)或者别人做好的。
vagrant 的执行步骤是:
1、vagrant box add {title} {box}
2、vagrant init {title}
3、修改 vagrant 配置文件,config.vm.network "public_network" 去除注释符,config.vm.synced_folder "F:/work/html/www", "/vagrant/" 设置好自己的同步目录
4、vagrant up (确定好是不是有同步目录的说明了,没有的话说明同步不成功)
5、vagrant ssh (windows ssh会出错,可以安装 git,同时在 path 设置 git 的执行路径)
备注:
虽然vagrant up启动报错,但是vagrant ssh还是能登陆虚拟机的,进入虚拟机后,执行如下命令
sudo rm -f /etc/udev/rules.d/70-persistent-net.rules
对, 问题就处在在持久网络设备udev规则(persistent network device udev rules)是被原VM设置好的,再用box生成新VM时,这些rules需要被更新。而这和Vagrantfile里对新VM设置private network的指令发生冲突,删除就好了,这样就可以保持数据同步了。