Curso Vagrant
24 horasVisão Geral
Curso Vagrant. Vagrant é um software de código aberto usado para criar e gerenciar ambientes virtuais de desenvolvimento. Ele pode ser considerado um wrapper em torno de software de virtualização, como VirtualBox, e software de gerenciamento de configuração, como Chef, Ansible e Puppet. O Vagrant permite que você use tecnologias de virtualização e nuvem para potencializar ambientes de desenvolvimento mais rápidos, eficientes e compartilháveis. Ele duplica o ambiente de desenvolvimento para permitir que os usuários compartilhem e combinem facilmente dados em diferentes máquinas e também cuida de questões de segurança.
No Curso Vagrant, você aprenderá os principais conceitos do Vagrant, como configurar a ferramenta de virtualização e como ela beneficiará suas organizações.
Objetivo
Ao participar do Curso Vagrant, os participantes aprenderão a:
- Conectando a uma caixa
- Trabalhando com Vagrant Cloud
- Configurando caixas com Vagrantfiles
- Criando um ambiente de desenvolvedor
- Fazendo upload de uma caixa para o Vagrant Cloud
Materiais
Inglês/Português/Lab PráticoConteúdo Programatico
An Introduction to Vagrant
- Why Vagrant?
- The Tao of Vagrant
- Alternatives to Vagrant
- Plain Desktop Virtualization
- Containers
- Cloud
- Vagrant Versions
Setting Up Vagrant
- Installing VirtualBox
- Installing Vagrant
- Mac OS X
- Windows
- Linux
- Common Mistakes
- Improper PATH Configuration
- Conflicting RubyGems Installation
- Using Vagrant Without VirtualBox
Your First Vagrant Machine
- Up and Running, The Vagrantfile
- V1 versus V2 Configuration
- Boxes
- Up
- Working with the Vagrant Machine
- State of the Vagrant Machine
- SSH
- Shared Filesystem
- Basic Networking
- Teardown
- Suspend
- Halt
- Destroy
Provisioning Your Vagrant VM
- Why Automated Provisioning?
- Supported Provisioners
- Manually Setting Up Apache
- Automated Provisioner Basics
- Shell Scripts
- Chef
- Puppet
- Multiple Provisioners
- “No Provision” Mode
- In-Depth Provisioner Usage
- Shell Scripts
- Inline scripts
- Run-once script
- Chef Server
- Puppet
- Modules
- Hiera Data
- Custom Facts
- Using a Puppet Master
- Shell Scripts
Networking in Vagrant
- Forwarded Ports
- Pros and Cons
- Basic Usage
- Collision Detection and Correction
- TCP versus UDP
- Host-Only Networking
- Pros and Cons
- Basic Usage
- Guest Operating System Dependency
- Bridged Networking
- Pros and Cons
- Basic Usage
- Composing Networking Options
- NAT Requirement As the First Network Interface
Modeling Multimachine Clusters
- Running Multiple Virtual Machines
- Controlling Multiple Machines
- Communication Between Machines
- Host-Only Networks
- Bridged Networks
Boxes
- Why Boxes?
- Box Format
- Basic Box Management with Vagrant
- Creating New Boxes from an Existing Environment
- Creating New Boxes from Scratch
- Creating the VirtualBox Machine
- Configuring the Operating System
- Installing VirtualBox Guest Additions
- Additional Software
- Minimizing the Final Box Size
- Packaging It Up
- Setting Vagrantfile Defaults
Extending Vagrant with Plug-Ins
- Extensible Features
- Managing Vagrant Plug-Ins
- Plug-In Development Basics
- Plug-In Definition
- Plug-In Components
- Error Handling
- Vagrant Internals
- A Basic Plug-In Development Environment
- Developing a Custom Command
- Component
- Implementation
- Working with the Virtual Machine
- Working with Multimachine Environments
- Parsing Command-Line Options
- Adding New Configuration Options
- Component
- Implementation
- Accessing the Configuration
- Configuration Merging
- Validation
- Adding a Custom Provisioner
- Component
- Implementation
- Provisioner Configuration
- Configuring the Machine
- Modifying Existing Vagrant Behavior
- Component
- Implementation
- Useful Keys in the Action Environment
- Other Plug-In Components
- Packaging the Plug-In
Vagrant Environmental Variables
- VAGRANT_CWD
- VAGRANT_HOME
- VAGRANT_LOG
- VAGRANT_NO_PLUGINS
- VAGRANT_VAGRANTFILE
Vagrant Configuration Reference
Troubleshooting and Debugging
- IRC, Mailing List/Google Group
- Professional Support