Basic usage of Vagrant provisioning
To get started with provisioning our Vagrant machine, let's create a new Vagrantfile. We can do this by running the vagrant init -m
command.
Within our Vagrantfile, we can define a provisioning block by using the config.vm.provision
code and pass in a value to declare what type of provisioner we will be using. In the following example, we will be using the shell type:
config.vm.provision "shell"
Using the shell provisioner, you can then define additional values inline:
config.vm.provision "shell", inline "sudo apt-get update -y"
Or use a configuration block, where we define our shell value within pipe characters:
config.vm.provision "shell" do |shell| shell.inline = "sudo apt-get update -y" end
Both options would, in this example, update the system packages. Using the configuration block method is much easier to read, as each value can have its own line.
Vagrant provisioning commands
Once you've created your provisioner values, it's time to apply those...