它们分别是什么?php
VirtualBox:java
号称是最强的免费虚拟机软件和VM相似。python
不只具备丰富的特点,并且性能也很优异。git
Vagrant:github
是一个基于Ruby的工具,用于建立和部署虚拟化开发环境。web
使用Oracle的开源VirtualBox虚拟化系统,使用Chef建立自动化虚拟环境。centos
主页:https://www.virtualbox.org/ruby
安装包:http://download.virtualbox.org/virtualbox/5.0.20/VirtualBox-5.0.20-106931-Win.exe 网络
主页:https://www.vagrantup.comssh
Vagrant与Docker很像。Vagrant是一个基于Ruby的开源工具,用于建立和部署虚拟化开发环境。很是适合 php/python/ruby/java 这类语言开发 web 应用。它 使用Oracle的开源VirtualBox虚拟化系统。能够经过 Vagrant 封装一个 Linux 的开发环境,分发给团队成员。成员能够在本身喜欢的桌面系统(Mac/Windows/Linux)上开发程序,代码却能统一在封装好的环境里运行,很是霸气。
安装包:https://releases.hashicorp.com/vagrant/1.8.1/vagrant_1.8.1.msi下载下来直接安装。
Vagrant box镜像站点:https://atlas.hashicorp.com/boxes/search
这里咱们使用CentOS官方提供的vagrant box
http://cloud.centos.org/centos/7/vagrant/x86_64/images/CentOS-7.box
下载该box到本地,倘若放在F:\目录下
添加本地box
vagrant box add CentOS/7 F:\CentOS-7.box # 添加本地box名称为CentOS/7
vagrant box list # 查看box列表
vagrant init CentOS/7 # 使用已添加的box建立虚拟机
vagrant up # 启动vagrant
最终会在目录下生成一个名为Vagrantfile的文件。
修改或编辑该文件内容以下
Vagrant.configure(2) do |config| config.vm.box = "CentOS/7" config.vm.network "public_network", ip: "192.168.0.228" config.vm.hostname = "c1" config.vm.provider "virtualbox" do |vb| vb.name = "c1" vb.memory = "2048" end end
注:其中config.vm.box表示使用哪一个box,
config.vm.network 配置网络及ip,
config.vm.hostname设置主机名称,
config.vm.provider设置使用virtualbox固然你还能够使用vmware。
Vb.name设置主机名,
vb.memory设置内存大小。
使用vagrant up启动虚拟机。
$ vagrant init # 初始化 $ vagrant up # 启动虚拟机 $ vagrant halt # 关闭虚拟机 $ vagrant reload # 重启虚拟机 $ vagrant ssh # SSH 至虚拟机 $ vagrant status # 查看虚拟机运行状态 $ vagrant destroy # 销毁当前虚拟机
关于vagrant的详细使用请参考 https://github.com/sxyx2008/DevArticles/issues/36
此篇也是我在github中学习的,更详细的使用这篇写的很好