中文文档:http://tangbaoping.github.io/vagrant_doc_zh/v2/
参考:
https://blog.csdn.net/yjk13703623757/article/details/70040797
https://www.linuxidc.com/Linux/2017-05/144101.htm
Vagrant是一款用来构建虚拟开发环境的外挂工具,可以简化虚拟机配置和管理。它底层支持VirtualBox、VMware、AWS等,非常适合使用php/python/ruby/java语言开发web应用,“代码在我机子上运行没有问题”这种说辞将成为历史。
1. 安装VirtualBox
去官网 https://www.virtualbox.org/wiki/Downloads 下载最新版的Virtualbox,然后双击安装,一直点击确认完成。
2. 安装Vagrant
去官网 https://www.vagrantup.com/downloads.html 下载最新版的Vagrant,然后双击安装,一直点击确认完成。在windows下安装vagrant,为了写入相应配置到环境变量,系统可能会要求重新启动。在命令行中,输入vagrant,查看程序是不是已经运行了。如果不行,请检查一下$PATH里面是否包含vagrant所在的路径
3. 准备box
接下来,我们需要选择使用何种操作系统,这里以centos7.2为例。以前基于虚拟机的工作流,我们需要下载ISO镜像,安装系统,设置系统等操作。而Vagrant开源社区提供了许多已经打包好的操作系统,我们称之为box。你可以从box下载地址(下文列出),找到你想要的box,当然你也可以自己制作一个。
官方仓库:https://atlas.hashicorp.com/boxes/search
官方镜像:https://vagrantcloud.com/boxes/search
第三方仓库:http://www.vagrantbox.es/(国内)
4. 使用案例
-
安装virtualbox,vagrant直接按照平常安装软件一样即可。
-
安装好后,进入磁盘目录,任意磁盘都行,创建一个管理目录。这里以vagrant目录为例。同时推荐终端工具不适用windows自带的dos,这里推荐xshell工具。
-
我们添加一个虚拟机,vagrant box add 。我这里把镜像文件放在wamp64下面的。
https://github.com/tommy-muehle/puppet-vagrant-boxes/releases/download/1.1.0/centos-7.0-x86_64.box
-
添加完之后,我们在查看当前的虚拟机,即可看到我们方才添加的虚拟机 vagrant box list
-
初始化虚拟机 vagrant init centos7。
-
此时我们查看vagrant目录下面就会多一个名为Vagrantfile的配置文件。
(这个配置文件主要后期我们在对虚拟做修改时,直接修改该文件。)
-
开启虚拟机 vagrant up
-
这时候看 VirtualBox,就能发现多了一台虚拟机(并且在运行中)
5. 命令详解
命令 | 作用 |
---|---|
vagrant box add | 添加box的操作 |
vagrant init | 初始化box的操作,会生成vagrant的配置文件Vagrantfile |
vagrant up | 启动本地环境 |
vagrant ssh | 通过ssh登录本地环境所在虚拟机 |
vagrant halt | 关闭本地环境 |
vagrant suspend | 暂停本地环境 |
vagrant resume | 恢复本地环境 |
vagrant reload | 修改了Vagrantfile后,使之生效(相当于先 halt,再 up) |
vagrant destroy | 彻底移除本地环境 |
vagrant box list | 显示当前已经添加的box列表 |
vagrant box remove | 删除相应的box |
vagrant package | 打包命令,可以把当前的运行的虚拟机环境进行打包 |
vagrant plugin | 用于安装卸载插件 |
vagrant status | 获取当前虚拟机的状态 |
vagrant global-status | 显示当前用户Vagrant的所有环境状态 |