Vagrant是一款用来构建虚拟开发环境的工具,它其实算是一个跨平台的虚拟机管理工具
1 安装
1.1 安装Vagrant
- 下载好pkg文件后,下一步安装即可
1.2 安装Virtualbox
Vagrant依赖现有的虚拟机软件来管理虚拟机,如Virtualbox, Vmware Fusion, Parallel Desktop等,其中最方便的是VirtualBox
- 同样下载好后直接安装
2 使用
vagrant init # 初始化
vagrant up # 启动虚拟机
vagrant halt # 关闭虚拟机
vagrant reload # 重启虚拟机
vagrant ssh # SSH 至虚拟机
vagrant status # 查看虚拟机运行状态
vagrant destroy # 销毁当前虚拟机
vagrant suspend # 挂起当前虚拟机
vagrant resume # 恢复被挂起的vm
vagrant box list # 列出所有box列表
vagrant box remove {base name} # 删除
vagrant destroy # 停止当前正在运行的虚拟机并销毁所有创建的资源
vagrant package # 把当前的运行的虚拟机环境进行打包,可用于分发开发环境
vagrant plugin # 安装卸载插件
vagrant provision # 设置基本的环境,进一步设置可以使用Chef/Puppet进行搭建
vagrant ssh-config # 输出ssh连接的一些信息
vagrant status # 获取虚拟机状态
vagrant version # 获取vagrant的版本
2.1下载启动Box
在Vagrant中,box是一种打包好的镜像,通过这个镜像,可以生成相应的虚拟机。box可以通过官方网站下载,也可以自己制作,在团队内分享。
官方的Box可以在创建时自动下载。例如以下步骤
2.2 添加镜像到 Vagrant
- 下载的镜像存放路径是 ~/box/centos.box
- 在终端里输入
hahaha 是我们给这个 box 命的名字,~/box/centos.box 是 box 所在路径
2.3 初始化开发环境
创建一个开发目录(比如:~/centos),也可以使用已有的目录,切换到开发目录里,用 hahaha 镜像初始化当前目录的环境
cd ~/centos # 切换目录
$ vagrant init hahaha # 初始化
vagrant up # 启动环境
- 所创建VM 的名字
- 通过 VB 观察已启动
你会看到终端显示了启动过程,启动完成后,我们就可以用 SSH 登录虚拟机了,剩下的步骤就是在虚拟机里配置你要运行的各种环境和参数了
- 退出
- status 获取虚拟机状态
- halt 关闭虚拟机
- destroy 销毁当前虚拟机
不演示了...
2.4 其他设置
Vagrant 初始化成功后,会在初始化的目录里生成一个 Vagrantfile 的配置文件,可以修改配置文件进行个性化的定制
Vagrant 默认是使用端口映射方式将虚拟机的端口映射本地从而实现类似 http://localhost:80 这种访问方式,这种方式比较麻烦,新开和修改端口的时候都得编辑。
相比较而言,host-only 模式显得方便多了
打开 Vagrantfile,将下面这行的注释去掉(移除 #)并保存:
config.vm.network :private_network, ip: "192.168.33.10"
重启虚拟机,这样我们就能用 192.168.33.10 访问这台机器了,你可以把 IP 改成其他地址,只要不产生冲突就行。