Vagrantfile 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  1. # -*- mode: ruby -*-
  2. # vi: set ft=ruby :
  3. # Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
  4. VAGRANTFILE_API_VERSION = "2"
  5. Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
  6. # All Vagrant configuration is done here. The most common configuration
  7. # options are documented and commented below. For a complete reference,
  8. # please see the online documentation at vagrantup.com.
  9. # Every Vagrant virtual environment requires a box to build off of.
  10. config.vm.box = "ubuntu/trusty64"
  11. config.vm.provision :shell, path: "provision/provision.sh",
  12. privileged: true
  13. # Disable automatic box update checking. If you disable this, then
  14. # boxes will only be checked for updates when the user runs
  15. # `vagrant box outdated`. This is not recommended.
  16. # config.vm.box_check_update = false
  17. # Create a forwarded port mapping which allows access to a specific port
  18. # within the machine from a port on the host machine. In the example below,
  19. # accessing "localhost:8080" will access port 80 on the guest machine.
  20. # config.vm.network "forwarded_port", guest: 80, host: 8080
  21. # Create a private network, which allows host-only access to the machine
  22. # using a specific IP.
  23. config.vm.network "private_network", ip: "192.168.33.123"
  24. # Create a public network, which generally matched to bridged network.
  25. # Bridged networks make the machine appear as another physical device on
  26. # your network.
  27. # config.vm.network "public_network"
  28. # If true, then any SSH connections made will enable agent forwarding.
  29. # Default value: false
  30. # config.ssh.forward_agent = true
  31. # Share an additional folder to the guest VM. The first argument is
  32. # the path on the host to the actual folder. The second argument is
  33. # the path on the guest to mount the folder. And the optional third
  34. # argument is a set of non-required options.
  35. # config.vm.synced_folder "../data", "/vagrant_data"
  36. # Provider-specific configuration so you can fine-tune various
  37. # backing providers for Vagrant. These expose provider-specific options.
  38. # Example for VirtualBox:
  39. #
  40. config.vm.provider "virtualbox" do |vb|
  41. # # Don't boot with headless mode
  42. # vb.gui = true
  43. #
  44. # # Use VBoxManage to customize the VM. For example to change memory:
  45. vb.customize ["modifyvm", :id, "--memory", "1024"]
  46. end
  47. #
  48. # View the documentation for the provider you're using for more
  49. # information on available options.
  50. # Enable provisioning with CFEngine. CFEngine Community packages are
  51. # automatically installed. For example, configure the host as a
  52. # policy server and optionally a policy file to run:
  53. #
  54. # config.vm.provision "cfengine" do |cf|
  55. # cf.am_policy_hub = true
  56. # # cf.run_file = "motd.cf"
  57. # end
  58. #
  59. # You can also configure and bootstrap a client to an existing
  60. # policy server:
  61. #
  62. # config.vm.provision "cfengine" do |cf|
  63. # cf.policy_server_address = "10.0.2.15"
  64. # end
  65. # Enable provisioning with Puppet stand alone. Puppet manifests
  66. # are contained in a directory path relative to this Vagrantfile.
  67. # You will need to create the manifests directory and a manifest in
  68. # the file default.pp in the manifests_path directory.
  69. #
  70. # config.vm.provision "puppet" do |puppet|
  71. # puppet.manifests_path = "manifests"
  72. # puppet.manifest_file = "site.pp"
  73. # end
  74. # Enable provisioning with chef solo, specifying a cookbooks path, roles
  75. # path, and data_bags path (all relative to this Vagrantfile), and adding
  76. # some recipes and/or roles.
  77. #
  78. # config.vm.provision "chef_solo" do |chef|
  79. # chef.cookbooks_path = "../my-recipes/cookbooks"
  80. # chef.roles_path = "../my-recipes/roles"
  81. # chef.data_bags_path = "../my-recipes/data_bags"
  82. # chef.add_recipe "mysql"
  83. # chef.add_role "web"
  84. #
  85. # # You may also specify custom JSON attributes:
  86. # chef.json = { :mysql_password => "foo" }
  87. # end
  88. # Enable provisioning with chef server, specifying the chef server URL,
  89. # and the path to the validation key (relative to this Vagrantfile).
  90. #
  91. # The Opscode Platform uses HTTPS. Substitute your organization for
  92. # ORGNAME in the URL and validation key.
  93. #
  94. # If you have your own Chef Server, use the appropriate URL, which may be
  95. # HTTP instead of HTTPS depending on your configuration. Also change the
  96. # validation key to validation.pem.
  97. #
  98. # config.vm.provision "chef_client" do |chef|
  99. # chef.chef_server_url = "https://api.opscode.com/organizations/ORGNAME"
  100. # chef.validation_key_path = "ORGNAME-validator.pem"
  101. # end
  102. #
  103. # If you're using the Opscode platform, your validator client is
  104. # ORGNAME-validator, replacing ORGNAME with your organization name.
  105. #
  106. # If you have your own Chef Server, the default validation client name is
  107. # chef-validator, unless you changed the configuration.
  108. #
  109. # chef.validation_client_name = "ORGNAME-validator"
  110. end