本地开发环境
VirtualBox 用于创建和管理虚拟机,但没有提供用户友好的界面,无法轻易地启动、配置、停止和销毁虚拟机。
Vagrant 是一个虚拟化工具,可以用命令行的方式来管理 VirtualBox,换言之它通过一个简单的命令即可创建、
启动、停止和销毁 VirtualBox 虚拟机。同时,Vagrant还能一键部署开发环境,做集群部署测试再也不痛苦了!
VirtualBox & Vagrant 安装完毕后,接下来需要选择一个Vagrant容器,在此基础上架设虚拟机,然后在虚拟
机上搭建开发PHP应用的各种web服务。Vagrant容器(box)可以仅包含操作系统(Centos/ubuntu),也可以同
时包含操作系统及完整软件栈(homestead)。
创建虚拟机
找到称心的Vagrant容器后,经终端进入工作目录,执行如下命令初始化配置文件:
vagrant init
该命令会生成Vagrantfile文件,接下来对该配置文件进行相关设置:
寻找称心的Vagrant容器就是为了配置此项
config.vm.box = "ubuntu/trusty64"
设定 IP ,以便本地web浏览器可以访问虚拟机
config.vm.network "private_network",ip: "192.168.33.10"
同步文件夹,本地目录映射到虚拟机目录 (.)代表相对于Vagrantfile文件位置,后面代表虚拟机绝对路径
config.vm.synced_folder "." , "/vagrant_data"
最后,执行下述命令创建这个虚拟机:
vagrant up
这个命令会默认下载远程Vagrant容器(如果需要下载的话),然后基于这个容器新建VirtualBox虚拟机。
首先要明白,本文写作目的就是介绍“一键部署开发环境”的黑科技。如果Vagrant容器并没有提供预先配置好的软件栈,
仅有个虚拟机很鸡肋的。可以使用Puppet和Chef来配置Vagrant虚拟机,Puppet和Chef都需要在Vagrantfile
配置文件中启用和配置。一旦启用,Vagrant会使用生效的清单来配置虚拟机。But,学习配置Puppet与Chef依然难受。
PuPHPet(http://puphpet.com)工具,在该网站中勾选所需服务便能自动创建Puppet配置,下载得到的Puppet
配置,最后只需执行 vagrent up 命令即可实现“一键部署开发环境”,因为PuPHPet能够自由配置操作系统与软件栈。
Vagrant 命令
vagrent init : 创建Vagrantfile配置脚本
vagrant up : 创建或启动虚拟机
vagrant provision : 使用指定的配置文件来配置虚拟机
vagrant ssh : 通过ssh登录虚拟机
vagrant halt : 用于停止虚拟机
vagrant destroy : 销毁虚拟机
友情提示:用 docker创建、管理虚拟机,具有更快、更轻、更强的特点。
学习站点:http://www.runoob.com/docker/docker-tutorial.html,建议有空自学。