/vagrant

Repositório para estudo

Primary LanguageShellMIT LicenseMIT

Vagrant

Proposta

Provisionar infraestrutura como código (IaC), utilizando a ferramenta Vagrant.

Conhecendo o Vagrant

O Vagrant é uma ferramenta de automação da HashiCorp onde é possível desenvolver ambientes completos, utilizando um arquivo de configuração.
Esse arquivo utiliza a linguagem HCL (HashiCorp Configuration Language), que é baseada na linguagem Ruby.
Como sua estrutura base, para "subir" os ambientes de desenvolvimento, o Vagrant utiliza os Providers, Provisioning e as Vagrant Boxes:

  • Providers são utilizados para fornecer os recursos de virtualização;
  • Provisioning são responsáveis por executar algumas tarefas de forma automatizada;
  • Vagrant Boxes são "caixas" onde contém os sistemas operacionais.

Em ambiente de produção é recomendável criar suas próprias boxes, ou utilizar boxes oficias (CentOS, Debian, Ubuntu).

Vagrantfile

O Vagrantfile é responsável por descrever toda infraestrutura, e subir o ambiente diretamente no Vagrant.

Command-Line Interface

Toda a interação com o Vagrant é realizada através de sua interface de linha de comando (CLI).