Fundamentals — Vagrantfiles, Networking & Provisioning
- Vagrantfile syntax: Vagrant.configure block, box specification, VM name and hostname, provider overrides
- Box management: HashiCorp Cloud boxes, vagrant box add/list/update, hosting private boxes on S3 or Artifactory
- Networking: forwarded ports (host to guest), private network (host-only adapter), public network (bridged adapter)
- Shared folders: default /vagrant sync, rsync for one-way sync, NFS for performance, VirtualBox shared folder type trade-offs
- Shell provisioner: inline scripts, external script files, privileged vs non-privileged provisioning, always run flag
- Vagrant commands: up, halt, reload, suspend, resume, destroy, ssh, provision — and the VM lifecycle
- Snapshots: vagrant snapshot save/restore for safe experimentation during provisioner development
Advanced Usage — Multi-Machine & Provisioner Integration
- Multi-machine Vagrantfiles: defining web, db, and cache nodes in a single file, cross-machine communication via private network
- Ansible provisioner: ansible_local vs ansible (control machine), playbook path, inventory generation, galaxy roles
- Chef and Puppet provisioners: chef_solo, puppet_apply — integrating configuration management testing workflows
- Custom box creation: packaging a configured VM with vagrant package, metadata.json for versioned box hosting
- Docker provider: using Docker containers as Vagrant machines, limitations vs VM-based providers
- Vagrant in team workflows: .gitignore for .vagrant/, box versioning, environment-specific variable injection
- Alternatives evaluation: Dev Containers (VS Code, devcontainer.json), Docker Compose for services, Nix for reproducibility
Participants can create and manage reproducible local development environments with Vagrant, simulate multi-service architectures locally, and understand when Vagrant is the right tool versus lighter-weight alternatives.
- Create reproducible local development environments with Vagrant Vagrantfiles checked into version control
- Simulate multi-service architectures locally using multi-machine Vagrantfiles with private networking
- Integrate Ansible and Chef as provisioners for complex environment configuration and testing
- Package and distribute custom Vagrant boxes for team use via private box hosting
- Evaluate Vagrant vs Dev Containers, Docker Compose, and Nix for different team and project contexts
Book the Vagrant training
Reach out to schedule a live online session for your team, in German or English.
Need hands-on help in your own project instead of a training? I also take on architecture and implementation work, fully remote.
Get in touch