Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Creating Development Environments with Vagrant Second Edition

You're reading from   Creating Development Environments with Vagrant Second Edition Leverage the power of Vagrant to create and manage virtual development environments with Puppet, Chef, and VirtualBox

Arrow left icon
Product type Paperback
Published in Mar 2015
Publisher
ISBN-13 9781784397029
Length 156 pages
Edition 2nd Edition
Tools
Concepts
Arrow right icon
Author (1):
Arrow left icon
MICHAEL KEITH PEACOCK MICHAEL KEITH PEACOCK
Author Profile Icon MICHAEL KEITH PEACOCK
MICHAEL KEITH PEACOCK
Arrow right icon
View More author details
Toc

Table of Contents (12) Chapters Close

Preface 1. Getting Started with Vagrant FREE CHAPTER 2. Managing Vagrant Boxes and Projects 3. Provisioning with Puppet 4. Using Ansible 5. Using Chef 6. Provisioning Vagrant Machines with Puppet, Ansible, and Chef 7. Working with Multiple Machines 8. Creating Your Own Box 9. HashiCorp Atlas A. A Sample LEMP Stack Index

Creating the Puppet manifests

Let's start by creating some folders for our Puppet modules and manifests by executing the following commands:

mkdir provision
cd provision
mkdir modules
mkdir manifests

For each of the modules we want to create, we need to create a folder within the provision/modules folder for the module. Within this folder, we need to create a manifests folder, and within this, our Puppet manifest file, init.pp. Structurally, this looks something like the following:

|-- provision
|   |-- manifests
|   |   `-- vagrant.pp
|   `-- modules
|       |-- our module
|           |-- manifests
|               `-- init.pp
`-- Vagrantfile

Installing Nginx

Let's take a look at what is involved to install Nginx through a module and manifest file provision/modules/nginx/manifests/init.pp. First, we define our class, passing in a variable so that we can change the configuration file we use for Nginx (useful for using the same module for different projects or different environments...

lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime
Banner background image