tech:vagrant:vagrantfile

Aquesta és una revisió antiga del document


vagrantfile

  • crear una box en Vagrant:
    1. vagrant package <nombre_maquina> –output fichero.box
    2. subir (versión, proveedor, etc…)
    3. descargar (desde otro Vagrantfile):
      Vagrantfile
       
# -*- mode: ruby -*-
# vi: set ft=ruby :
 
VAGRANTFILE_API_VERSION = "2"
 
cluster = {
  "master" => { :ip => "192.168.33.10", :cpus => 1, :mem => 1024 },
  "slave" => { :ip => "192.168.33.11", :cpus => 1, :mem => 1024 }
}
 
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
 
  cluster.each_with_index do |(hostname, info), index|
 
    config.vm.define hostname do |cfg|
      cfg.vm.provider :virtualbox do |vb, override|
        config.vm.box = "ubuntu/trusty64"
        override.vm.network :private_network, ip: "#{info[:ip]}"
        override.vm.hostname = hostname
        vb.name = hostname
        vb.customize ["modifyvm", :id, "--memory", info[:mem], "--cpus", info[:cpus], "--hwvirtex", "on"]
      end # end provider
    end # end config
 
  end # end cluster
end

/via: https://gist.github.com/roblayton/c629683ca74658412487

Vagrant.configure(2) do |config|
  config.vm.box = "debian/jessie64"
  config.vm.hostname = "prueba1"
  config.vm.provision "shell", path: "actualizar.sh"

  config.vm.network :private_network, ip: "192.168.100.10" # only host
  config.vm.network :public_network, ip: "192.168.100.20"
  config.vm.network :public_network,:bridge=>"eth0"
  config.vm.network :forwarded_port, guest: 80, host: 8080
  config.vm.synced_folder "./www","/www"

  config.vm.provider "virtualbox" do |vb|
    vb.name = "VM-Prueba1"
    vb.memory = 1024
    vb.cpus = 3
    vb.linked_clone = true
    vb.gui = true
  end
end

  Vagrant.configure("2") do |config|
     config.vm.define "web" do |nodo1|
       nodo1.vm.box = "debian/jessie64"
       nodo1.vm.hostname = "web"
       nodo1.vm.network "public_network", bridge: "eth0"
       nodo1.vm.network "private_network", ip: "10.0.100.101"
     end
     config.vm.define "db" do |nodo2|
       nodo2.vm.box = "debian/jessie64"
       nodo2.vm.hostname = "db"
       nodo2.vm.network "private_network", ip: "10.0.100.102"
     end
   end

  • tech/vagrant/vagrantfile.1637060426.txt.gz
  • Darrera modificació: 16/11/2021 03:00
  • per mate