发布于 2015-12-11 01:24:53 | 316 次阅读 | 评论: 0 | 来源: PHPERZ
Vagrant 创建虚拟化开发环境
Vagrant是一个基于Ruby的工具,用于创建和部署虚拟化开发环境。它 使用Oracle的开源VirtualBox虚拟化系统,使用 Chef创建自动化虚拟环境。
samba在windows下居然比nfs快很多倍(这太不科学了,windows的nfs是不是故意做得这么垃圾),而且非常稳定,推荐用samba代替nfs,samba解决了开发环境问题,哈哈哈哈哈哈哈,2015年11月2日 19:43:42 updated
唉,我放弃了,使用这种方法symfony仍旧会报无法创建软链接错误,滚回nfs,卡就卡点吧 2015年10月29日 21:34:08 updated
我们在Web开发时都碰到会需要使用软链接情况,比如使用npm、symfony2等等,Windows下如果不能创建软链接,即使有Vagrant,开发时也是很郁闷的,我之前是挂了个nfs出来解决,可惜缺点是速度实在慢,就这么忍受了好久,今天才发现其实是可通过配置实现软链接的,于是分享出来。
程序版本:
Vagrant 1.7.4
VirtualBox 5.0.2
第一步,使用Windows的Admin权限启动一个terminal:
第二步,在Vagrantfile文件中加配置(配置文件见文末):
然后在第一步的terminal里通过vagrant up启动这一步里被配置的box。
第三步,测试是否可以创建软链接:
不过硬链接是不行的(谁知道怎么实现?),还好大部分项目都不需要用到硬链接:
第四步,测试创建个Symfony项目:
OK
附上文本形式的配置:
# -*- mode: ruby -*-
# vi: set ft=ruby :
VAGRANTFILE_API_VERSION = "2"
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.box = "symfony2.7"
config.vm.box_url = "symfony2.7.2-ubuntu64.box"
config.vm.network "private_network", ip: "33.33.33.100"
config.vm.synced_folder ".", "/vagrant",
:nfs => (RUBY_PLATFORM =~ /linux/ or RUBY_PLATFORM =~ /darwin/)
config.vm.provider "virtualbox" do |v|
v.customize ["setextradata", :id, "VBoxInternal2/SharedFoldersEnableSymlinksCreate/vagrant", "1"]
end
# config.vm.provision :puppet do |puppet|
# puppet.manifests_path = "puppet/manifests"
# puppet.module_path = "puppet/modules"
# puppet.options = ['--verbose']
# end
end