• 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文件拿到其他计算机上配置即可使用

  • 相关阅读:
    Mybatis核心
    正则表达式(二)Java中正则表达式的使用
    Elasticsearch(ES)分词器的那些事儿
    并发编程之:JUC并发控制工具
    scrollTo()和scrollBy()的区别
    SpringBoot 的@Value注解太强大了,用了都说爽!
    SQL 查询并不是从 SELECT 开始的
    jsoup 教程
    爬虫
    case when以及集合聚合函数的用法
  • 原文地址:https://www.cnblogs.com/longyunfeigu/p/6952646.html
Copyright © 2020-2023  润新知