Vagrant
Basic commands
vagrant up
vagrant provision
vagrant destroy
vagrant ssh
vagrant status
Example Vagrantfile
# -*- mode: ruby -*-
# vi: set ft=ruby :
VAGRANTFILE_API_VERSION = "2"
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.box = "ubuntu/bionic64"
config.ssh.insert_key = false
config.vm.hostname = "rpi.setup.local"
config.vm.provider :virtualbox do |v|
v.memory = 1024
v.cpus = 1
end
config.vm.define "rpi.setup" do |instance|
instance.vm.hostname = "rpi.setup.local"
# Set forwarded ports from virtualbox instance
#instance.vm.network "forwarded_port", guest: 80, host: 80
# Ansible provisioning.
instance.vm.provision "ansible" do |ansible|
ansible.playbook = "site.yml" # playbook reference
ansible.become = true
ansible.ask_vault_pass = true # --ask-vault-pass
#ansible.vault_password_file = "~/.vault_pass_local.txt" # vault password in a file
ansible.groups = {
"all:vars" => { "ansible_python_interpreter" => "/usr/bin/python3" },
"proxy" => [ "rpi.setup" ]
}
# Enable ansible verbosity
#ansible.verbose = "vvvv"
end
end
end