Creating Development Environments with Vagrant


Creating Development Environments with Vagrant
eBook: $19.99
Formats: PDF, PacktLib, ePub and Mobi formats
$16.99
save 15%!
Print + free eBook + free PacktLib access to the book: $52.98    Print cover: $32.99
$32.99
save 38%!
Free Shipping!
UK, US, Europe and selected countries in Asia.
Also available on:
Overview
Table of Contents
Author
Support
Sample Chapters
  • Provision virtual machines using Puppet and Chef
  • Replicate multi-server environments locally
  • Set up a virtual LAMP development server

Book Details

Language : English
Paperback : 118 pages [ 235mm x 191mm ]
Release Date : August 2013
ISBN : 1849519188
ISBN 13 : 9781849519182
Author(s) : Michael Peacock
Topics and Technologies : All Books, Other, Virtualization and Cloud, Open Source

Table of Contents

Preface
Chapter 1: Getting Started with Vagrant
Chapter 2: Managing Vagrant Boxes and Projects
Chapter 3: Provisioning with Puppet
Chapter 4: Provisioning with Chef
Chapter 5: Provisioning with Vagrant using Puppet and Chef
Chapter 6: Working with Multiple Machines
Chapter 7: Creating Your Own Box
Appendix: A Sample LAMP Stack
Index
    • Chapter 2: Managing Vagrant Boxes and Projects
      • Creating Vagrant projects
        • Importing and using base boxes
        • Creating projects without importing a base box
      • Managing Vagrant boxes
        • Adding Vagrant boxes
        • Listing Vagrant boxes
        • Removing Vagrant boxes
        • Repackaging Vagrant boxes
        • Finding Vagrant boxes
      • Controlling guest machines
        • Powering up the virtual machine
        • Suspending the virtual machine
        • Resuming the virtual machine
        • Shutting down the virtual machine
        • Starting from scratch
        • Connecting to the virtual machine over SSH
      • Integration between the host and the guest
        • Port forwarding
        • Synced folders
        • Networking
      • Auto-running commands
      • Summary
      • Chapter 3: Provisioning with Puppet
        • Provisioning
        • About Puppet
          • Creating modules and manifests with Puppet
            • Puppet classes
            • Default Puppet manifests
            • Resources
            • Resource execution ordering
          • Installing software
            • Updating our package manager
            • Installing the Apache package
            • Running the Apache service
          • File management
            • Copying a file
            • Creating a symlink
            • Creating folders
            • Creating multiple folders in one go
          • cron management
          • Running commands
          • Manage users and groups
            • Creating groups
            • Creating users
            • Updating the sudoers file
          • Subscribe and refresh only
          • Puppet modules
          • Using Puppet to provision servers
        • Summary
        • Chapter 4: Provisioning with Chef
          • Knowing about Chef
          • Creating cookbooks and recipes with Chef
            • Resources – what Chef can do
            • Installing software
              • Updating our package manager
              • Installing the Apache package
              • Running the Apache 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
          • Chapter 5: Provisioning with Vagrant using Puppet and Chef
            • Provisioning within Vagrant
            • Provisioning with Puppet on Vagrant
              • Using Puppet in a standalone mode
                • Puppet provisioning in action
              • Using Puppet in client/server mode
            • Provisioning with Chef on Vagrant
              • Using Chef solo
              • Using Chef in client/server mode
            • Other built-in provisioners
              • Provisioning with SSH – a recap
              • Ansible playbooks
            • Using multiple provisioners on a single project
            • Overriding provisioning via the command line
            • Summary
            • Chapter 6: Working with Multiple Machines
              • Using multiple machines with Vagrant
                • Defining multiple virtual machines
              • Connecting to multiple virtual machines over SSH
                • Networking multiple virtual machines
                • Provisioning the machines separately
              • Destroying a multi-machine project
              • Summary
              • Chapter 7: Creating Your Own Box
                • Getting started
                • Preparing the VirtualBox machine
                • VirtualBox Guest Additions
                • Vagrant authentication
                  • Vagrant user and admin group
                  • Sudoers file
                  • Insecure public/private key pair
                • Provisioners
                  • Puppet
                  • Chef
                • Cleanup
                • Export
                • Summary

                Michael Peacock

                Michael Peacock (www.michaelpeacock.co.uk) is an experienced Senior/Lead Developer and a Zend Certified Engineer from Newcastle, UK, with a degree in Software Engineering from the University of Durham. After spending a number of years running his own web agency, managing the development team, and working for Smith Electric Vehicles on developing their web-based Vehicle Telematics platform, he currently serves as a CTO for Ground Six (www.groundsix.com), an ambitious tech company, where he leads the development team and manages the software development processes. He is the author of Drupal 7 Social Networking, PHP 5 Social Networking, PHP 5 E-Commerce Development, Drupal 6 Social Networking, Selling Online with Drupal E-Commerce, and Building Websites with TYPO3. Other publications Michael has been involved in include Mobile Web Development, Drupal for Education and E-Learning, and Jenkins Continuous Integration Cookbook, for which he acted as a Technical Reviewer. Michael has also presented at a number of user groups and conferences including PHP UK Conference, Dutch PHP Conference, ConFoo, PHPNE, PHPNW, and Cloud Connect. You can follow Michael on Twitter, @michaelpeacock, or find out more about him through his blog, www.michaelpeacock.co.uk.
                Sorry, we don't have any reviews for this title yet.

                Code Downloads

                Download the code and support files for this book.


                Submit Errata

                Please let us know if you have found any errors not listed on this list by completing our errata submission form. Our editors will check them and add them to this list. Thank you.

                Sample chapters

                You can view our sample chapters and prefaces of this title on PacktLib or download sample chapters in PDF format.

                Frequently bought together

                Creating Development Environments with Vagrant +    Chef Infrastructure Automation Cookbook =
                50% Off
                the second eBook
                Price for both: $32.95

                Buy both these recommended eBooks together and get 50% off the cheapest eBook.

                What you will learn from this book

                • Create Vagrant projects
                • Sync folders with your virtual development environment
                • Integrate your own machine with the virtual machine
                • Manage provisioning the server configuration with Puppet and Chef
                • Set up multiple virtual machines for a single project
                • Configure your virtual environment on your network
                • Build your own base box for Vagrant
                • Import and manage operating system images in Vagrant
                • Get to grips with good practices for developing projects on your local machine
                • Set up a simple LAMP server for a Vagrant project

                In Detail

                Vagrant is a tool for building complete development environments. With an easy-to-use workflow and focus on automation, Vagrant lowers development environment setup time, increases development/production parity, and makes the "it works on my machine" excuse a thing of the past.

                "Creating Development Environments with Vagrant" is a practical, hands-on guide that walks you through the functionality of Vagrant, Puppet, and Chef to create powerful and flexible virtual development environments. Create your own virtualization environments containing configurations for different projects so that you can simulate complicated environments that can be easily shared with colleagues to get your projects up and running quickly and effortlessly.

                "Creating Development Environments with Vagrant" starts with an introduction to virtualization and the concepts behind it, why it’s useful, and an overview of the architecture of Vagrant. We will learn to install Vagrant and get to know its prerequisites. Covering provisioning scripts with Puppet and Chef, learning to use them independently as well as with Vagrant to create a powerful combination.

                If you want to locally test your projects, juggle multiple projects running on different versions of software, easily share technology requirement changes with colleagues, and, most importantly, want to perform all these tasks efficiently, then this book is for you.

                "Creating Development Environments with Vagrant" will take you from a virtualization novice to running all of your projects across your team in robust, isolated virtual development environments.

                Approach

                This is a practical, hands-on guide that will help you set up and implement virtual development environments with Vagrant easily and effortlessly.

                Who this book is for

                "Creating Development Environments with Vagrant" is for developers, programmers, and coders who want to maintain multiple projects within their own environment. It is also aimed at companies who are looking to deploy ready-to-go development solutions for new staff or even existing staff moving to new projects, and to enforce a consistent and portable virtual development environment that is easy to create and quick to set up.

                Code Download and Errata
                Packt Anytime, Anywhere
                Register Books
                Print Upgrades
                eBook Downloads
                Video Support
                Contact Us
                Awards Voting Nominations Previous Winners
                Judges Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software
                Resources
                Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software