• vagrant public_network 自定义静态 ip配置方法


    Vagrant 创建虚拟化开发环境

    Vagrant是一个基于Ruby的工具,用于创建和部署虚拟化开发环境。它 使用Oracle的开源VirtualBox虚拟化系统,使用 Chef创建自动化虚拟环境。


    这篇文章是为大家讲解的是vagrant扩展public_network让vagrant可以自定义静态ip

    Vagrant是一个基于Ruby的工具,用于创建和部署虚拟化开发环境。它 使用Oracle的开源VirtualBox虚拟化系统,使用 Chef创建自动化虚拟环境。

    其实解决方法也不是没有,只是要修改vagrant的源代码,加一些扩展代码上去

    好吧,在那里加扩展代码呢?

    我的操作系统ubuntu,大家可能有在window下面安装的。。都不管了。。。

    1.找到我们的vagrant安装目录:我的安装目录是

    /opt/vagrant/

    2.然后修改以下路径的配置文件,注意哦,以下路径是我本机的安装路径

    /opt/vagrant/embedded/gems/gems/vagrant-1.2.4/plugins/providers/virtualbox/action/network.rb
    

    找到这个方法  def bridged_network_config(config)  这是一个ruby的方法定义,修改这个方法,添加扩展代码

    修改前:

    def bridged_network_config(config)
      return {
        :type => :dhcp,
        :use_dhcp_assigned_default_route => config[:use_dhcp_assigned_default_route]
      }
    end

    修改后:

    def bridged_network_config(config)
      if config[:ip]
                  options = {
                      :auto_config => true,
                      :mac         => nil,
                      :netmask     => "255.255.255.0",
                      :type        => :static
                  }.merge(config)
                  options[:type] = options[:type].to_sym
                  return options
      end
      return {
        :type => :dhcp,
        :use_dhcp_assigned_default_route => config[:use_dhcp_assigned_default_route]
      }
    end

    好了,这样就修改成功了。。

    看回Vagrantfile这份文件:

    我们应该怎么使用呢?添加了扩展代码,我想大家都知道开启public_network是怎么写配置文件,下面我写出添加了扩展代码自定义ip的配置文件写法,也非常简单,具体代码

      config.vm.network :public_network,ip:"192.168.9.111"

    修改完成后,不要忘记

    vagrant reload
  • 相关阅读:
    CSS属性中Display与Visibility的不同
    11
    【零基础学习iOS开发】【01-前言】01-开篇
    C#计算时间差。
    C++拷贝构造函数:浅拷贝与深拷贝
    C++:string操作函数
    文件输入输出(二):文件的操作
    文件输入输出(一):重定向
    Java中的StringBuffer
    C++中setiosflags()的用法
  • 原文地址:https://www.cnblogs.com/xinjie10001/p/6271006.html
Copyright © 2020-2023  润新知