Creating Development Environments with Vagrant - Second Edition
eBook - ePub

Creating Development Environments with Vagrant - Second Edition

Michael Peacock

Share book
  1. 156 pages
  2. English
  3. ePUB (mobile friendly)
  4. Available on iOS & Android
eBook - ePub

Creating Development Environments with Vagrant - Second Edition

Michael Peacock

Book details
Book preview
Table of contents
Citations

About This Book

About This Book

  • Get your projects up and running quickly and effortlessly by simulating complicated environments that can be easily shared with colleagues
  • Provision virtual machines using Puppet, Ansible, and Chef
  • A practical, hands-on guide that helps you learn how to create powerful and flexible virtual development environments

Who This Book Is For

If you are a developer who wants to have your development environment accurately reflect your live servers to tackle the ever-increasing complexity of web and software projects, this book is most certainly intended for you!

It's assumed that you know the basics of Linux systems in the context of web-based projects.

Frequently asked questions

How do I cancel my subscription?
Simply head over to the account section in settings and click on “Cancel Subscription” - it’s as simple as that. After you cancel, your membership will stay active for the remainder of the time you’ve paid for. Learn more here.
Can/how do I download books?
At the moment all of our mobile-responsive ePub books are available to download via the app. Most of our PDFs are also available to download and we're working on making the final remaining ones downloadable now. Learn more here.
What is the difference between the pricing plans?
Both plans give you full access to the library and all of Perlego’s features. The only differences are the price and subscription period: With the annual plan you’ll save around 30% compared to 12 months on the monthly plan.
What is Perlego?
We are an online textbook subscription service, where you can get access to an entire online library for less than the price of a single book per month. With over 1 million books across 1000+ topics, we’ve got you covered! Learn more here.
Do you support text-to-speech?
Look out for the read-aloud symbol on your next book to see if you can listen to it. The read-aloud tool reads text aloud for you, highlighting the text as it is being read. You can pause it, speed it up and slow it down. Learn more here.
Is Creating Development Environments with Vagrant - Second Edition an online PDF/ePUB?
Yes, you can access Creating Development Environments with Vagrant - Second Edition by Michael Peacock in PDF and/or ePUB format, as well as other popular books in Informatik & Informatik Allgemein. We have over one million books available in our catalogue for you to explore.

Information

Year
2015
ISBN
9781784391638

Creating Development Environments with Vagrant Second Edition


Table of Contents

Creating Development Environments with Vagrant Second Edition
Credits
About the Author
About the Reviewers
www.PacktPub.com
Support files, eBooks, discount offers, and more
Why subscribe?
Free access for Packt account holders
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Customer support
Downloading the example code
Errata
Piracy
Questions
1. Getting Started with Vagrant
Introducing Vagrant
Requirements for Vagrant
Getting started
Installing VirtualBox
Installing Vagrant
Summary
2. Managing Vagrant Boxes and Projects
Creating our first Vagrant project
Managing Vagrant-controlled guest machines
Powering up a Vagrant-controlled virtual machine
Suspending a virtual machine
Resuming a virtual machine
Shutting down a virtual machine
Starting from scratch
Updating based on Vagrantfile changes
Connecting to the virtual machine over SSH
Managing integration between host and guest machines
Port forwarding
Synced folders
Networking
Autorunning commands
Managing Vagrant boxes
Adding Vagrant boxes
Listing Vagrant boxes
Checking for updates
Removing Vagrant boxes
Repackaging a Vagrant box
Updating the current environment's box
Too many Vagrants!
Summary
3. Provisioning with Puppet
Provisioning
Puppet
Creating modules and manifests with Puppet
Puppet classes
Default Puppet manifests
Resources
Resource requirements
Resource execution ordering
The notify, subscribe, and refreshonly parameters
Executing resources in stages
Installing software
Updating our package manager
Installing the nginx package
Running the nginx service
File management
Copying a file
Creating a symlink
Creating folders
Creating multiple folders in one go
Cron management
Running commands
Managing users and groups
Creating groups
Creating users
Updating the sudoers file
Creating configurable classes
Puppet modules
Using Puppet to provision servers
Summary
4. Using Ansible
Understanding Ansible
Installing Ansible
Creating an inventory
Creating Ansible playbooks
Modules – what Ansible can do
Installing software
Updating our package manager
Installing the nginx package
Running the nginx service
Understanding file management
Copying a file
Creating a symlink
Creating folders
Managing cron
Running commands
Managing users and groups
Creating groups
Creating users
Using Ansible roles
Using Ansible to provision servers
Summary
5. Using Chef
Knowing about Chef
Creating cookbooks and recipes with Chef
Resources – what Chef can do
Installing software
Updating our package manager
Installing the nginx package
Running the nginx service
Understanding file management
Copying a file
Creating a symlink
Creating folders
Creating multiple folders in a single process with looping
Managing cron
Running commands
Managing users and groups
Creating groups
Creating users
Updating the sudoers file
Knowing common resource functionalities
Using Chef cookbooks
Using Chef to provision servers
Summary
6. Provisioning Vagrant Machines with Puppet, Ansible, and Chef
Provisioning within Vagrant
Provisioning with Puppet on Vagrant
Using Puppet in standalone mode
Puppet provisioning in action
Using Puppet in client/server mode
Provisioning with Ansible on Vagrant
Provisioning with Chef on Vagrant
Using Chef-solo
Using Chef in client/server mode
Provisioning with SSH – a recap
Using multiple provisioners on a single project
Overriding provisioning via the command line
Summary
7. Working with Multiple Machines
Using multiple machines with Vagrant
Defining multiple virtual machines
Connecting to the multiple virtual machines over SSH
Networking the multiple virtual machines
Provisioning the machines separately
Destroying a multimachine project
Summary
8. Creating Your Own Box
Getting started
Preparing the VirtualBox machine
VirtualBox Guest Additions
Vagrant authentication
Vagrant user and admin group
The sudoers file
Insecure public/private key pair
Provisioners
Installing Puppet
Installing Chef
Cleaning up the VM
Export
Summary
9. HashiCorp Atlas
Discovering boxes
Installing new boxes
Updating existing boxes
Checking for outdated boxes
Distributing boxes
Sharing and connecting with Atlas
Logging Vagrant into Vagrant Cloud
Sharing a Vagrant virtual machine over HTTP(S)
Sharing and connecting to a Vagrant virtual machine
Summary
A. A Sample LEMP Stack
Creating the Vagrant project
Creating the Puppet manifests
Installing Nginx
Installing PHP
Installing the MySQL module
Default manifest
Installing Nginx and PHP
Hostname configuration
E-mail sending services
MySQL configuration
Launching the virtual machine
Summary
Index

Creating Development Environments with Vagrant Second Edition

Copyright © 2015 Packt Publishing
All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews.
Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the author, nor Packt Publishing, and its dealers and distributors will be held liable for any damages caused or alleged to be caused directly or...

Table of contents