目录
2. 为什么可以通过Vagrant创建虚拟机?而且在本机执行Vagrant命令时,会自动启动虚拟机?
1.什么是Vagrant?
Vagrant是一个虚拟机管理和配置工具,可以方便安装、管理虚拟机。
说白了vagrant就是一个普普通通的装了一个Linux的VirtualBox虚拟机,配以vagrant团队为之开发的一系列套件,辅助完成诸如安装初始化、文件同步、ssh、部署环境升级、功能插件安装等等一些列问题的开发环境部署套件。
2. 为什么可以通过Vagrant创建虚拟机?而且在本机执行Vagrant命令时,会自动启动虚拟机?
因为VirtualBox会开放一个创建虚拟机的接口,Vagrant会利用这个接口来创建虚拟机,并且通过Vagrant来管理,配置和自动安装虚拟机。
3.box是什么?
box是一个打包好的操作系统,后缀名为 .box的文件,也是一个压缩包,里面包含了Vagrant的配置文件和VirtualBox的虚拟机镜像文件。启动虚拟机是基于box文件的,因此在启动虚拟机前必须把box文件准备好,或者也可以在启动的时候指定远程的box地址,把box文件下载下来,然后启动时指定该文件。
4.初学必须掌握的基本命令
vagrant box list 查看目前已有的box
vagrant box add 新增加一个box
vagrant box remove 删除指定box
vagrant init 初始化配置vagrantfile
vagrant up 启动虚拟机
vagrant ssh ssh登录虚拟机
vagrant suspend 挂起虚拟机
vagrant reload 重启虚拟机
vagrant halt 关闭虚拟机
vagrant status 查看虚拟机状态
vagrant destroy 删除虚拟机
5.配置 Vagrant
通过 Vagrant 创建虚机需要先导入镜像文件,也就是 box,它们默认存储的位置在用户目录下的 .vagrant.d 目录下,对于 Windows 系统来说,就是 C:\Users\用户名\.vagrant.d。如果后续可能会用到较多镜像,或者你的 C 盘空间比较紧缺,可以通过设置环境变量 VAGRANT_HOME 来设置该目录。在 Windows 系统中,可以这样操作:新建系统环境变量,环境变量名为 VAGRANT_HOME,变量值为 你的其他盘的路径。
6.vagrant搭建虚拟工作环境
1.下载虚拟机镜像box,先到A list of base boxes for Vagrant - Vagrantbox.es上下载box到本地
2.添加box
vagrant box add centos 远端的box地址或者本地的box文件名
centos是我们给这个box命名的名字
例如:
1.vagrant box add centos https://dl.dropbox.com/u/7225008/Vagrant/CentOS-6.3-x86_64-minimal.box ( 远端的box地址)
2.vagrant box add centos CentOS-6.3-x86_64-minimal.box (本地的box文件名)
3.vagrant box add "CentOS 6.3 x86_64 minimal" CentOS-6.3-x86_64-minimal.box
执行完添加box命令后,box中的镜像文件被放到了/Users/astaxie/.vagrant.d/boxes/,如果在window系统中应该是放到了C:\Users\当前用户名\.vagrant.d\boxes\目录下。
执行完添加box命令后,box中的镜像文件被放到了/Users/astaxie/.vagrant.d/boxes/,如果在window系统中应该是放到了C:\Users\当前用户名\.vagrant.d\boxes\目录下。
注意:这里用命令行窗口添加,一定要到有box文件的目录下进行添加,不然执行会出错,找不到改文件。
3.初始化box
初始化之前cd到开发目录(这里的开发目录和vagrant ssh登录虚拟机后的/vagrant目录是一样的),因为在哪里执行vagrant init会生成一个vagrantfile文件,而且登录也只能在有该文件下的目录才能进行登录到虚拟机
vagrant init
4.启动的虚拟机
vagrant up