Vagrantfile 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. # -*- mode: ruby -*-
  2. # vi: set ft=ruby :
  3. # All Vagrant configuration is done below. The "2" in Vagrant.configure
  4. # configures the configuration version (we support older styles for
  5. # backwards compatibility). Please don't change it unless you know what
  6. # you're doing.
  7. Vagrant.configure("2") do |config|
  8. # The most common configuration options are documented and commented below.
  9. # For a complete reference, please see the online documentation at
  10. # https://docs.vagrantup.com.
  11. # Every Vagrant development environment requires a box. You can search for
  12. # boxes at https://atlas.hashicorp.com/search.
  13. config.vm.box = "trusty64"
  14. # Disable automatic box update checking. If you disable this, then
  15. # boxes will only be checked for updates when the user runs
  16. # `vagrant box outdated`. This is not recommended.
  17. # config.vm.box_check_update = false
  18. # Create a forwarded port mapping which allows access to a specific port
  19. # within the machine from a port on the host machine. In the example below,
  20. # accessing "localhost:8080" will access port 80 on the guest machine.
  21. # config.vm.network "forwarded_port", guest: 80, host: 8080
  22. # Create a private network, which allows host-only access to the machine
  23. # using a specific IP.
  24. # config.vm.network "private_network", ip: "192.168.33.10"
  25. # Create a public network, which generally matched to bridged network.
  26. # Bridged networks make the machine appear as another physical device on
  27. # your network.
  28. # config.vm.network "public_network"
  29. # Share an additional folder to the guest VM. The first argument is
  30. # the path on the host to the actual folder. The second argument is
  31. # the path on the guest to mount the folder. And the optional third
  32. # argument is a set of non-required options.
  33. config.vm.synced_folder ".", "/data/v8js"
  34. # Provider-specific configuration so you can fine-tune various
  35. # backing providers for Vagrant. These expose provider-specific options.
  36. # Example for VirtualBox:
  37. #
  38. # config.vm.provider "virtualbox" do |vb|
  39. # # Display the VirtualBox GUI when booting the machine
  40. # vb.gui = true
  41. #
  42. # # Customize the amount of memory on the VM:
  43. # vb.memory = "1024"
  44. # end
  45. config.vm.provision "shell", inline: <<-SHELL
  46. gpg --keyserver keys.gnupg.net --recv 7F438280EF8D349F
  47. gpg --armor --export 7F438280EF8D349F | apt-key add -
  48. apt-get update
  49. apt-get install -y software-properties-common
  50. add-apt-repository ppa:ondrej/php
  51. add-apt-repository ppa:pinepain/libv8-5.7
  52. apt-get update
  53. apt-get install -y php7.0-dev \
  54. libv8-5.7-dbg libv8-5.7-dev \
  55. gdb tmux git tig curl apache2-utils
  56. SHELL
  57. end