准备工作
VirtualBox的安装
下载地址:https://www.virtualbox.org/wiki/Downloads
Vagrant的安装
下载地址:https://www.vagrantup.com/downloads.html
PS:安装完后就可以在终端输入 vagrant 命令了。
搭建环境
1 载入centos7的box
$ vagrant box add centos7 /d/BaiduNetdiskDownload/vagrant-centos-7.box;
2 查看当前拥有虚拟机
$ vagrant box list;
centos7 (virtualbox, 0)
3 初始化开发环境
$ vagrant init centos7
将生成Vagrantfile文件,可进行配置
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 改成其他地址,只要不产生冲突就行。
还有很多配置修改后续再继续详解;
5:登录和启动
vagrant up
vagrant ssh
切换到开发目录
Vagrant 常用命令
-
vagrant box add 添加box
-
vagrant init 初始化 box
-
vagrant up 启动虚拟机
-
vagrant ssh 登录虚拟机
-
vagrant box list 列出 Vagrant 当前 box 列表
-
vagrant box remove 删除相应的 box
-
vagrant destroy 停止当前正在运行的虚拟机并销毁所有创建的资源
-
vagrant halt 关机
-
vagrant package 把当前的运行的虚拟机环境进行打包为 box 文件
-
vagrant plugin 安装卸载插件
-
vagrant reload 重新启动虚拟机,重新载入配置文件
-
vagrant resume 恢复被挂起的状态
-
vagrant status 获取当前虚拟机的状态
-
vagrant suspend 挂起当前的虚拟机
-
vagrant global-status 查看当前 vagrant 管理的所有 vm 信息
vagrant VirtualBox centos/7 无法共享目录
从上面启动过程 No guest additions were detected on the base box for this VM! 可以看出 centos/7 缺少 Virtualbox Guest Additions
解决:
vagrant 安装 vagrant-vbguest 插件,在 Vagrantfile 中配置 synced_folder
- 安装 vagrant-vbguest
vagrant plugin install vagrant-vbguest
- Vagrantfile 配置共享目录,挂载位置不能使用 /vagrant
Vagrant.configure("2") do |config|
config.vm.synced_folder ".", "/share"
end
vagrant 启动错误解决
之前一直启动正常,突然一天启动的时候报了如下错误。通过各种尝试,在vagrantfile中添加了如下代码后便可启动了。
config.vm.box = "centos/7" Encoding.default_external = 'UTF-8'SELinux功能,你可以试试setenforce 0之后再重启nginx
浙公网安备 33010602011771号