Autorunning commands
One of the key concepts within Vagrant is provisioning. This involves turning a basic virtual machine with a base operating system into a server that is ready to run for your project, meeting your requirements. To go from the base operating system to a fully fledged machine, we need to use a provisioning tool to install the software and configure the machine. There are a number of key provisioning options within Vagrant:
- Shell
- Puppet
- Ansible
- Chef
Puppet, Ansible, and Chef are all third-party tools that Vagrant supports out of the box, and provide specific languages to configure servers in an agnostic way that can be used for different operating systems. The next three chapters will discuss these tools in more detail. Vagrant also supports some other provisioning tools, including Salt, Docker, and CFEngine.
SSH provisioning involves running a series of commands on the virtual machine over SSH when the machine is first set up.
There are two key ways in which we can use SSH provisioning...