Book Image

Hands-On DevOps with Vagrant

By : Alex Braunton
Book Image

Hands-On DevOps with Vagrant

By: Alex Braunton

Overview of this book

Hands-On DevOps with Vagrant teaches you how to use Vagrant as a powerful DevOps tool and gives an overview of how it fits into the DevOps landscape. You will learn how to install VirtualBox and Vagrant in Windows, macOS, and Linux. You will then move on to understanding Vagrant commands, discovering its boxes and Vagrant Cloud. After getting to grips with the basics, the next set of chapters helps you to understand how to configure Vagrant, along with networking. You will explore multimachine, followed by studying how to create multiple environments and the communication between them. In addition to this, you will cover concepts such as Vagrant plugins and file syncing. The last set of chapters provides insights into provisioning shell scripts, also guiding you in how to use Vagrant with configuration management tools such as Chef, Ansible, Docker, Puppet, and Salt. By the end of this book, you will have grasped Vagrant’s features and how to use them for your benefit with the help of tips and tricks.
Table of Contents (21 chapters)
Title Page
Dedication
Packt Upsell
Contributors
Preface
Index

Vagrant file-syncing


Syncing files is the way of sharing files between your host machine and the guest machine running within Vagrant. It allows you to edit files on your host machine and see the changes in your guest machine or vice versa.

Vagrant calls this synced folders and offers five ways to do this:

  • Basic syncing
  • SMB
  • VirtualBox
  • RSync
  • NFS

In this section, we will cover basic usage, RSync, and NFS.

Setting up synced folders

To get started, let's create a Vagrantfile by running the vagrant init -m command.  We'll start with basic usage-syncing, then look at RSync, and then finish with NFS.

We'll create a file on our host system, make some changes to the contents, and then view that file within our Vagrant machine. We'll then edit the file on the Vagrant machine and view its changes on the host machine. This will prove that the file can be edited both ways via the host and the Vagrant machine.

We'll need to create and edit the config.vm.synced_folder setting within our Vagrantfile.

 

 

Synced folders...