Este projeto utiliza Vagrant e um script em shell para automatizar a configuração de um ambiente DevOps.
Certifique-se de ter os seguintes itens instalados em sua máquina:
-
Clone este repositório para a sua máquina local:
git clone https://github.com/Tech-Preta/vagrant-devops.git
-
Execute o comando
vagrant up
para iniciar a máquina virtual e configurar o ambiente:vagrant up
-
Aguarde enquanto o Vagrant provisiona a máquina virtual e executa o script de inicialização.
-
Após a conclusão do processo, você pode acessar a máquina virtual via SSH:
vagrant ssh
-
Pronto! Agora você está dentro da máquina virtual e pode começar a trabalhar em seu ambiente DevOps.
Se desejar personalizar o ambiente ou adicionar mais ferramentas DevOps, você pode editar o arquivo bootstrap.sh
localizado na raiz do projeto. Este script é executado durante o processo de provisionamento e pode ser modificado conforme necessário.
Aqui está o conteúdo do script bootstrap.sh
utilizado para instalação de ferramentas DevOps:
#!/bin/bash
# Instalação de Ferramentas DevOps
# Instalando o Docker
curl https://get.docker.com | bash
curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
# Instalando o Kubectl
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl
# Instalando o Helm
curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3
sudo chmod 700 get_helm.sh
./get_helm.sh
# Instalando o Terraform
wget -O- https://apt.releases.hashicorp.com/gpg | sudo gpg --dearmor -o /usr/share/keyrings/hashicorp-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/hashicorp.list
sudo apt update -y && sudo apt install terraform -y
# Instalando o Packer
curl -fsSL https://apt.releases.hashicorp.com/gpg | sudo apt-key add -
sudo apt-get update -y && sudo apt-get install packer -y
# Instalando o Velero
curl -LO https://github.com/vmware-tanzu/velero/releases/download/v1.10.1/velero-v1.10.1-linux
sudo mv velero-v1.10.1-linux /usr/local/bin/velero
# Instalando o Eksctl
curl --silent --location "https://github.com/weaveworks/eksctl/releases/latest/download/eksctl_$(uname -s)_amd64.tar.gz" | tar xz -C /tmp
sudo mv /tmp/eksctl /usr/local/bin
# Instalando o Vagrant
wget -O- https://apt.releases.hashicorp.com/gpg | sudo gpg --dearmor -o /usr/share/keyrings/hashicorp-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/hashicorp.list
sudo apt update -y && sudo apt install vagrant -y
# Instalando o Python3
sudo add-apt-repository ppa:deadsnakes/ppa -y
sudo apt-get update -y
sudo apt-get install python3.10 -y
sudo apt-get upgrade -y
# Instalando o Ansible
sudo apt install ansible -y
# Instalando o AWS CLI
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install
# Instalando o Pip
apt install python3-pip -y
# Instalando o opentofu
curl --proto '=https' --tlsv1.2 -fsSL https://get.opentofu.org/install-opentofu.sh -o install-opentofu.sh
sudo chmod +x install-opentofu.sh
./install-opentofu.sh --install-method deb
# Instalando o zsh
sudo apt-get install zsh -y
Contribuições são bem-vindas! Sinta-se à vontade para abrir uma issue ou enviar um pull request.