Categorias
Linux

Como instalar Vagrant no Centos 7

1 – Instale o Vagrant

1.1 – Copie a url do link do centos

1.2 – Rode o comandos abaixo

rpm -i https://releases.hashicorp.com/vagrant/1.8.1/vagrant_1.8.1_x86_64.rpm
cd /etc/yum.repos.d
wget http://download.virtualbox.org/virtualbox/rpm/rhel/virtualbox.repo

2 – Instale do DKMS, o Virtual Box e os pacotes necessários:

wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm
rpm -Uvh rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm
rpm -Uvh http://ftp.jaist.ac.jp/pub/Linux/Fedora/epel/7/x86_64/e/epel-release-7-5.noarch.rpm
yum install gcc make patch  dkms qt libgomp 
yum install kernel-headers kernel-devel fontforge binutils glibc-headers glibc-devel
export KERN_DIR=/usr/src/kernels/3.10.0-327.3.1.el7.x86_64

*** A ÚLTIMA PARTE DO COMANDO DEVE SER SUBSTITUIDA PELA SUA VERSÃO DO KERNEL ***

Pegue as versões disponíveis do VirtualBox

yum provides virtualbox

Instale a última versão disponível, no meu caso foi:

yum install VirtualBox-5.0-5.0.12_104815_el7-1.x86_64

3 – Adicione os usuário que irão rodar o virtualbox

usermod -a -G vboxusers usuario

 

4 – Acesse o site vagrantbox.es, selecione a box desejada, crie uma pasta onde você deseja rodar seu ambiente, por exemplo, /home/nome-do-ambiente e rode:

 vagrant box add {nome-da-vm} {url}
 vagrant init {nome-da-vm}
 vagrant up

5 – Instalando o Apache e sincronizando a pasta:

Você pode acessar a pasta da sua que criou na sua máquina para o ambiente (aquela que tem o arquivo Vagrantfile) e criar um arquivo bootstrap.sh com o seguinte conteúdo:

#!/usr/bin/env bash

yum update
yum install -y httpd

sudo service httpd start

*** LEMBRE-SE DE CRIAR AS PASTAS ANTES DE RODAR O SCRIPT ***

Agora, você deve editar o arquivo Vagrantfile e adicionar a seguinte linha na penúltima linha do script (antes da palavra “end”) para que o script que criamos rode quando a máquina for iniciada:

config.vm.provision :shell, path: "bootstrap.sh"
config.vm.synced_folder "/home/boxes/centos7minimal/www", "/var/www/html"
config.vm.network "forwarded_port", guest: 80, host: 80

Não esqueça de verificar se a porta 80 do seu sistema está aberta, com o nmap:

nmap -sT -O localhost

Onde na linha da diretiva “config.vm.synced_folder” a primeira pasta é a pasta do host onde ficarão os arquivos do seu projeto e a segunda pasta é o local do DocumentoRoot da sua VM.

6 – Rodando o script:

Após editar os arquivos corretamente, basta rodar o comando abaixo para recarregar suas configurações:

vagrant reload --provision

7 – Testando

Para testar o funcionamento do seu Apache e o sinronismo das pastas, crie um arquivo index.html na pasta sincronizada do seu host com qualquer conteúdo e logue na VM:

vagrant ssh

Para ver o conteúdo do arquivo index.html execute:

wget -qO- 127.0.0.1

O conteúdo do seu arquivo será o output do comando acima.

8 – Compartilhado o ambiente criado

Para compartilhar seu projeto, primeiro crie uma conta no Atlas da Hashicorp

Depois de criar a sua conta, você deve executar os comandos abaixo:

vagrant login
### Digite usuário e senha ###
vagrant share

Fontes:
VagrantUP

Centos Wiki

Apache Lounge