On Github kyleboon / presentation-vagrant-up
Kyle Boon
It works on my machine
-- every developer
$ vagrant init precise64 $ vagrant up
# -*- mode: ruby -*- # vi: set ft=ruby : # All Vagrant configuration is done below. The "2" in Vagrant.configure # configures the configuration version (we support older styles for # backwards compatibility). Please don't change it unless you know what # you're doing. Vagrant.configure(2) do |config| # The most common configuration options are documented and commented below. # For a complete reference, please see the online documentation at # https://docs.vagrantup.com. # Every Vagrant development environment requires a box. You can search for # boxes at https://atlas.hashicorp.com/search. config.vm.box = "precise64" end
config.vm.provider :virtualbox do |vb|
vb.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
vb.customize ["modifyvm", :id, "--memory", mem_size ? mem_size : 6608]
vb.customize ["modifyvm", :id, "--cpus", num_cpus ? num_cpus : 2]
end
config.vm.synced_folder File.expand_path("../"), "/presentation"
Support for forwarded ports, public and private networks etc
config.vm.network "forwarded_port", guest: 80, host: 8080
Vagrant.configure("2") do |config|
config.vm.provision "shell", inline: "echo Hello"
config.vm.define "web" do |web|
web.vm.box = "apache"
end
config.vm.define "db" do |db|
db.vm.box = "mysql"
end
end
Vagrant.configure("2") do |config|
config.vm.provision "shell",
inline: "echo Hello, World"
end
config.vm.provision :chef_solo do |chef|
chef.json = {
:java => {
:install_flavor => "oracle",
:jdk_version => "7",
:oracle => {
"accept_oracle_download_terms" => true
}
}
}
chef.run_list = [
"recipe[apt]",
"recipe[git]",
"recipe[java]",
"recipe[mongodb::10gen_repo]",
"recipe[mongodb]",
"recipe[vertx]"
]
end
vagrant up --provider=docker