Skip to content

Latest commit

 

History

History
80 lines (60 loc) · 3.1 KB

deployment.rst

File metadata and controls

80 lines (60 loc) · 3.1 KB

Deployment Methods

This document provides information about the different ways to deploy this project. Every method can be used for testing different phases of the development of the project.

Containers with docker-compose

This method uses the current machine for deploying this project. Docker Compose project allows to setup multiple containers and their configuration values. The docker-compose_deploy.sh bash script provides instructions for cleaning up resources and start new ones. The GRIMOIRELAB_NUM_ARTHUR_WORKERS environment variable specifies the number of Arthur workers that is going to be created.

$ GRIMOIRELAB_NUM_ARTHUR_WORKERS=10 ./docker-compose_deploy.sh

Note

This script can be executed multiple times.

Virtual Machines with vagrant

This project provides a Vagrantfile to automate the provisioning process on a Virtual Machines. It's highly recommended to use the setup.sh script of the bootstrap-vagrant project for installing Vagrant dependencies and plugins required for its project. The script supports two Virtualization providers (Libvirt and VirtualBox). The following instruction installs and configures Vagrant and Libvirt as Vagrant provider.

$ curl -fsSL https://raw.githubusercontent.com/electrocucaracha/bootstrap-vagrant/master/setup.sh | PROVIDER=libvirt bash

Once Vagrant is installed, it's possible to provision a Virtual Machine:

$ vagrant up docker_compose

Containers in a Bare-metal machine

It's possible to deploy GrimoireLab services on a Bare-metal machines. The all-in-one.sh bash script installs the dependencies required for cloning the repository and execute the docker-compose_deploy.sh bash script with its default options.

Virtual Machines on a public cloud with terraform

The Terraform configuration files provided by this project launch multiple AWS EC2 instances, these instanc es are based on the number of GitHub organizations specified in the variables.tf file. These terraform files require to install the terraform client previously, for more information visit the official site.

$ terraform init
$ terraform apply -auto-approve