vagrant 使用指南

vagrant 使用指南


Date:2017.6.6 By author : longyunfeigu

一、准备工作

安装vagrant、virtualbox、listary. 
注意:安装virtualbox的目录可以随意指定,但是安装vagrant最好选择默认路径(涉及到路径指向问题)

二、安装centos6.5

1.在windows下任意一个磁盘分区创建一个文件夹,文件夹名为虚拟机前缀名

2.把下载好的后缀名为.box镜像文件复制到创建的文件夹内

3.在创建的文件夹内单击两次打开listary,选择命令--打开命令行窗口

4.cmd中输入vagrant box add ceshi1 c.box,其中box是参数,ceshi1是命令vagrant box list显示的虚拟机名称,c.box是本人下载的box镜像

5.cmd中输入vagrant init ceshi1,此处的ceshi1和步骤4保持一致.也可以输入vagrant init,但是需要手动修改文件夹下的Vagrantfile文件,把config.vm.box = "base"改为config.vm.box = "ceshi1"

6.cmd中输入vagrant up启动虚拟机

7.在virtualbox的设置-网络把NAT改成桥接,并更改MAC地址(DHCP根据MAC地址分发IP,防止多台虚拟机出现同一个IP的情况)

三、配置

网络配置

vagrant的网络有三种模式

1、较为常用是端口映射,就是将虚拟机中的端口映射到宿主机对应的端口直接使用,在Vagrantfile中配置: 
config.vm.network :forwarded_port, guest: 80, host: 8080 
guest: 80 表示虚拟机中的80端口, host: 8080 表示映射到宿主机的8080端口。

2、如果需要自己自由的访问虚拟机,但是别人不需要访问虚拟机,可以使用private_network,并为虚拟机设置IP ,在Vagrantfile中配置: 
config.vm.network :private_network, ip: "192.168.1.104"
192.168.1.104 表示虚拟机的IP,多台虚拟机的话需要互相访问的话,设置在相同网段即可

3、如果需要将虚拟机作为当前局域网中的一台计算机,由局域网进行DHCP,那么在Vagrantfile中配置: 
config.vm.network :public_network
注意:更改完配置之后需要重启虚拟机才会生效.可以在virtualbox里手动重启,也可以在cmd输入vagrant reload重启

目录映射

既然是开发环境,那么开发工作肯定还是需要在本地完成,而不是都要进到虚拟机中去完成,虚拟机就好好在后台运行服务就好了,不然就本末倒置了,所以这里就需要使用目录映射功能,将本地的目录映射到虚拟机的对应目录。当然虚拟机里的文件也会映射到本地。

默认情况下,当前的工作目录,会被映射到虚拟机的/vagrant 目录,当前目录下的文件可以直接在/vagrant下进行访问。其实这里是由.\\.vagrant\\machines\\default\\virtualbox\\synced_folders文件决定的 
当然,从自动化配置的角度,能不进系统就不需要进系统,所以在vagrant也可以进行目录映射的操作: 
config.vm.synced_folder "../data", "/vagrant_data"
其中"../data"是本机目录,支持绝对路径,"/vagrant_data"是虚拟机路径

附录--vagrant常用命令

  • vagrant up:启动虚拟机
  • vagrant halt:关闭虚拟机
  • vagrant suspend:暂停虚拟机
  • vagrant resume:恢复虚拟机(对应于暂停虚拟机)
  • vagrant destroy:删除虚拟机
  • vagrant package --output NAME --vagrantfile FILE:虚拟机打包

注意:如果要打包的系统中网络模式中使用了private_network的话,在打包前需要清除private_network的设置,避免不必要的错误: 
rm -f /etc/udev/rule.d/70-persistent-net.rules
制作完成之后直接将box文件拿到其他计算机上配置即可使用

posted @ 2017-06-06 17:23  龙云飞谷  阅读(506)  评论(0编辑  收藏  举报