Instalando o GitLab
Imagem ilustrativa: Instalando o GitLab

O Gitlab é uma ferramenta que unifica a comunicação entre a equipe, auxilia no gerenciamento de projetos, faz revisão de códigos, versionamento, continuous integration e continuous delivery em uma só plataforma. O projeto “similar” ao github oferece a plataforma, em forma de serviço na nuvem. Mas, também libera  a integração gratuita do sistema, em sua estrutura.

Aqui na DialHost, começamos a utilizar esta ferramenta dentro da nossa estrutura cloud. Ele está sendo utilizado para integrar o desenvolvimento de todos os nossos projetos. Com ele conseguimos organizar o que está sendo feito em cada projeto, definir novas metas de lançamento, além de ter facilitado extremamente no versionamento dos produtos e todos os updates que fazemos. Após um bom tempo de uso chegamos à segurança de falar que vale realmente muito a pena contar com esta plataforma em um ambiente cloud próprio.

Dentre as grandes vantagens em ter o GitLab em sua própria estrutura está…

  • Ter a plataforma gratuitamente e sem limitação de escala pelo sistema.
  • Segurança de ter os dados em seus próprios servidores.
  • Instalação bem fácil, através do bash do seu servidor cloud ou dedicado.

Colocando o GitLab para funcionar

Agora que sabemos o básico sobre a plataforma vamos a parte prática. Instalar o GitLab. Neste exemplo utilizarei o DialCloud + 4GB. O pensamento desta instalação é para uma equipe pequena. Caso necessite de uma estrutura para suportar até 100 usuário, por exemplo, o próprio site do GitLab recomenda que se tenha pelo menos 4GB de memória. Para casos ainda maiores eles deixam uma série de recomendações em sua página de requerimentos do sistema

Então nossa estrutura ficou assim

  • 4 GB de RAM (Os 4 GB são recomendados pois teremos uso do sistema operacional além do utilizado pelo GitLab).
  • 2 vCPUs
  • 40 GB de storage (Lembre-se que o espaço em disco deve ser sempre o suficiente para alocar pelo menos todos os projetos em seu repositório).
Tela de instância para o GitLab
Tela de instância para o GitLab

Agora que minha instância está 100% instalada e configurada é importante pegar sua senha de root e o IP público para fazermos um acesso ao bash. No caso vou utilizar a ferramenta MRemote para o acesso.

Com o MRemote aberto vamos às configurações. Você precisa atentar apenas a parte de conexão e protocolo, sendo que em conexão você colocará os dados referentes ao seu servidor.

Configuração do servidor no MRemote
Configuração do servidor no MRemote

Após configurar o acesso basta conectar ao servidor configurado. Este programa é interessante pois uma vez configurado o acesso não preciso mais ficar me preocupando em gravar senhas e etc. E sempre que você precisar atualizar o GitLab você simplesmente conecta novamente e faz o update.

Alterando os hostnames e definindo pingback

Com o acesso ao servidor precisamos adicionar apenas os comandos que vou explicar abaixo e em poucos minutos  seu gitlab estará funcionando.

O primeiro passo aqui é definir um hostname para o seu servidor. Ele será importante mais pra frente, para não surgir erros na instalação das dependências do gitlab.

Dica: Não é necessário colocar um subdomínio ou domínio apontado para o servidor, apenas um hostname válido. Neste exemplo utilizarei o subdomínio gitlab-blog.dialhost.com.br.

[code]hostname gitlab-blog.dialhost.com.br[/code]
 

Em seguida insira o hostname também no arquivo /etc/hostname, com o conteúdo  gitlab-blog.dialhost.com.br
[code]vim /etc/hostname[/code]
 

Acesse o arquivo /etc/hosts com o vim (assim como foi feito no comando acima) e insira os valores abaixo:
[code]
127.0.0.1            gitlab-blog.dialhost.com.br gitlab-blog localhost.localdomain localhost
::1                  localhost6.localdomain6 localhost6
[/code]
 

Instalando o Ruby

Como o GitLab é baseado no ruby precisaremos ter a última versão dele rodando em nossa VM. Vamos instalar a versão 2.3.1
[code]
apt-add-repository ppa:brightbox/ruby-ng
apt-get update
apt-get install ruby2.3 ruby2.3-dev
[/code]
 

Instalando o PostGreSQL

Para gerenciar todas as informações do sistema o GitLab utiliza o banco PostGreSQL. Assim, precisaremos instalar e configurar o banco de dados para funcionar na plataforma.
[code]apt-get install postgresql-9.3 postgresql-client-9.3 postgresql-common postgresql-client-common libpq-dev -y [/code]
 

Tudo certo… vamos iniciar o serviço
[code]/etc/init.d/postgresql start [/code]
 

Agora vamos criar o usuário e o banco de dados para o gitlab ser instalado corretamente
[code]
su postgres
psql
createuser –createdb git
createdb –owner=git gitlabhq_production
\q
su root
[/code]
 

Pronto… o banco de dados está configurado agora vamos a parte que interessa realmente.

Instalando de fato

Agora precisamos instalar as dependências do sistema. Mas não se preocupe isto pode ser facilmente resolvido com o comando
[code]apt-get install curl openssh-server ca-certificates postfix -y[/code]
 

A última dependência a ser instalada é o postfix. Esta aplicação é responsável por enviar e-mails de notificação do GitLab. Ela pedirá algumas configurações que seguem abaixo.

Na primeira tela selecione a opção “Internet Site”.

Instalação do servidor de e-mail do GitLab
Selecionando a opção de instalação do servidor de e-mail

Por fim, configure o do hostname responsável por enviar os e-mails que o GitLab utiliza. Coloque o seu domínio para isto. No caso irei cadastrar o domínio gitlab-blog.dialhost.com.br e dar ok.

Cadastro do domínio para o servidor de e-mail
Cadastro do domínio para o servidor de e-mail

O processo demorará menos de um minuto e assim que instaladas as dependências vamos instalar o package do GitLab.

[bash]
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
apt-get install gitlab-ce
[/bash]

Viu como é fácil instalar… Para finalizar você só precisa dar início ao serviço no servidor e fazer as configurações iniciais. Para isto utilize o comando
[code]gitlab-ctl reconfigure[/code]
 

Finalizada a parte do bash, podemos ir para o browser digitar o endereço apontado para o seu cloud. No caso vou utilizar o IP da minha máquina. Mas, caso você tenha configurado um domínio é possível acessá-lo por ele. Eu fui direcionado a tela abaixo pedindo para resetar a senha inicial da conta de administrador do GitLab(root).

Tela para resetar senha de root do GitLab
Tela para resetar senha de root do GitLab

Coloquei a nova senha desejada e confirmei. Prontinho… agora estou na tela de login onde posso fazer o primeiro acesso ao meu GitLab.

Tela de login do GitLab
Tela de login do GitLab

Como administrador eu posso mudar o nome do meu usuário root e criar novos usuários para toda a equipe. Além disto eu posso definir permissões diferenciadas entre os usuários de forma geral e por projeto. O que facilita para o gerente definir quem cuidará de qual projeto e o que ele poderá fazer em cada projeto.

Integrando as equipes

Ao entrar no GitLab, é possivel ver um painel bem intuitivo e cheio de recursos para cada usuário. Mas ao meu ver, o mais interessante é a capacidade que ele tem de integrar toda a comunicação da equipe de desenvolvimento. Você pode criar Issues que receberão toda a discussão da equipe referente a ela. O versionamento em git é mostrado de forma extremamente intuitiva e a todo momento temos explicações de como agir para comitar, darmos os merge-request e etc.

Então… espero que tenham gostado deste post e que vocês consigam ter melhores resultados ao integrar esta ferramenta a metodologia de desenvolvimento de sua equipe.

Compartilhe:

Sobre o autor:

Sobre o autor:

Posts Relacionados:

Novidades do Blog

Deixe seu e-mail abaixo para passar a receber promoções e novidades do nosso Blog.