使用Vagrant在Windows下部署开发环境

Vagrant介绍

Vagrant可以提供可配置、可再生、便携的工作环境,它主要是一个中间层技术,它的下层是VirtualBox,VMware等虚拟机软件,它的上层是配置管理系统工具,比如Shell Scripts,Chef,Puppet等可以自动化安装和配置软件的工具。

对你有什么用

对于开发人员来说,Vagrant可以帮你统一团队成员的开发环境。如果你或者你的伙伴创建了一个Vagrantfile,那么你只需要执行vagrant up就行了,所有的软件都会安装并且配置好。团队成员可以通过相同的Vagrantfile来创建他们的开发环境,无论他们是在Linux, Mac OS X,或者Windows下,这样就可以保证你团队成员的代码是跑在相同的环境中,从而避免令人烦躁的在我的机器上是可以的问题。

对于运维人员来说,Vagrant可以给你提供一次性,并且与线上一致的服务器环境,你可以利用VirtualBox来测试你的管理脚本,不需要再登录到线上服务器测试了。

对于设计人员来说,Vagrant可以帮你处理一切,你只需要专注在设计上就好了。一旦开发人员帮你配置好了Vagrant之后,你只需要执行vagrant up,然后开始设计。工具和环境如下:

 

工具及环境

版本

下载地址

宿主机环境

Win8.1


VirtualBox

VirtualBox-5.0

https://www.virtualbox.org/

Vagrant

vagrant_1.7.4

http://www.vagrantup.com/

Xshell

xshell_5.0

http://www.netsarang.com/download/main.html

 

1. 安装 VirtualBox

Vagrant只是一个虚拟环境的容器,具体虚拟化的实现,依赖外部的虚拟机,例如VirtualBox和VMware,一般使用VirtualBox来搭建,免费小巧,在Windows系统上下载安装VirtualBox for Windows hosts版。

下载地址:https://www.virtualbox.org/wiki/Downloads

 

2. 安装 Vagrant

 

根据提示一步步安装,安装的过程中会自动配置系统变量,不需要再手工配置。

下载地址:http://downloads.vagrantup.com/ 

 

3.导入封装好的镜像

 

boxes是什么?就是各种已经打包好的虚拟环境镜像,供Vagrant使用。启动命令提示符,通过cd命令进入box镜像存放的目录,在终端里输入:

vagrant box add hello ./package.box

 

hello是我们给这个box取的名字,./package.box是box的路径,如果放在其他目录需要在文件前添加相对路径,用绝对路径会提示找不到文件,建议box和vagrant的bin程序都放在同一个分区中,用相对路径添加。

 

4.初始化开发环境

 

在本地创建一个开发目录(比如:D:\Code),用来和虚拟环境的开发目录同步,用命令行切换到开发目录里,初始化当前目录的环境:

cd d:\code # 切换目录
vagrant init hello  # 初始化目录环境

初始化开发环境后会自动生成一个Vagrantfile文件,用来配置vagrant的行为所创建虚拟机的信息,修改默认的Vagrantfile:      

VAGRANTFILE_API_VERSION = "2"
 
path = "#{File.dirname(__FILE__)}"
 
require 'yaml'
require path + '/scripts/homestead.rb'
 
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
  Homestead.configure(config, YAML::load(File.read(path + '/Homestead.yaml')))
End


修改Homestead.yaml文件,修改map为本地的开发目录,to为在虚拟环境中映射的目录:

 

folders:
    - map: d:/phpcode
      to: /home/vagrant/Code


修改homestead.rb文件,找到下面一行,修改为前面命名的box名称:    

 

config.vm.box = "hello"

  5.启动虚拟开发环境

 

vagrant up  # 启动环境


如果不出现错误,一个vagrant环境就已经配置好了。打开VirtualBox会看到终端显示了启动过程,启动完成后,我们就可以登录SSH:

vagrant ssh # SSH登录


Windows 终端并不支持ssh,所以需要安装第三方SSH 客户端,这里使用的是Xshell 5。登录SSH,剩下的步骤就是在SSH客户端里通过虚拟机配置你要运行的各种环境和参数。

  

6.用SourceTree克隆项目代码到本地开发目录中。

 

7.配置nginx服务器

 

最后修改host文件,将虚拟环境的域名映射到本地80端口,重启虚拟机,在本地通过配置好的域名就可以访问项目了。

  

8.常用管理命令

 vagrant up (启动虚拟机)

vagrant halt (关闭虚拟机――对应就是关机)

vagrant suspend (暂停虚拟机――只是暂停,虚拟机内存等信息将以状态文件的方式保存在本地,可以执行恢复操作后继续使用)

vagrant resume (恢复虚拟机 ―― 与前面的暂停相对应)

vagrant destroy (删除虚拟机,删除后在当前虚拟机所做进行的除开Vagrantfile中的配置都不会保留)


你可能感兴趣的:(windows,虚拟机,服务器,工作环境,管理系统)