Ir para o conteúdo principal

Configure o GitLab em um Servidor Linux - Hospede Sua Própria Plataforma DevOps

Os produtos ideais para este guia

Comece agora mesmo — peça o produto adequado e siga este guia passo a passo.

Introdução

GitLab é uma plataforma DevOps completa que permite que equipes colaborem no código, automatizem fluxos de trabalho e gerenciem todo o ciclo de vida do desenvolvimento de software de forma eficiente. Neste guia, explicaremos como instalar o GitLab em um servidor Linux.

Instale o GitLab com o Instalador One Click Apps

Você pode instalar o GitLab diretamente pelo nosso Instalador One Click Apps na interface web do VPS. Após concluir a configuração inicial dos apps, abra o catálogo de apps, busque por GitLab e inicie a implantação com suas configurações preferidas de projeto, ambiente e domínio. Isso oferece uma forma rápida e amigável de implantar e gerenciar o GitLab sem precisar configurar manualmente via linha de comando, aproveitando a gestão integrada via web, suporte a domínios personalizados e provisionamento SSL onde disponível.

Preparação

Os seguintes requisitos são recomendados pela equipe oficial do GitLab e é altamente recomendado seguir os pré-requisitos para evitar problemas e inconvenientes no futuro.

Hardware

ComponentesMínimoRecomendado
CPU2x 2 GHz4x 2.6+ GHz
RAM4 GB8 GB
Armazenamento10 GB50+ GB
Largura de banda100 mbit/s (upload & download)100 mbit/s (upload & download)

Software

PlataformaOpções
Sistema OperacionalUbuntu (20.04, 22.04, 24.04), Debian (10, 11, 12), OpenSUSE (15.5)
Banco de DadosPostgreSQL 14.9+
Servidor WebNGINX (incluído no GitLab), Puma 6.4.2+
OutrosRedis 7.x+, Sidekiq 7.3.2+, Prometheus 2.54.1+
informação

Para as informações mais precisas e atualizadas sobre especificações, consulte a documentação oficial de Requisitos de Hardware do GitLab.

É necessário estabelecer uma conexão via cliente SSH para instalar o GitLab no seu servidor Linux. Confira nosso Guia de acesso inicial (SSH) para saber mais.

Após estabelecer a conexão, você pode começar a instalar os pacotes necessários para a instalação do GitLab.

Passo 1: Instalando Dependências

Primeiro, você precisa instalar algumas dependências para rodar o instalador do GitLab. Use os comandos abaixo para instalar as dependências necessárias no seu servidor Linux.

Atualize a lista de pacotes para a versão mais recente e instale o pacote OpenSSH Server junto com as dependências necessárias usando o comando abaixo. É assim que o painel web do GitLab será hospedado.

sudo apt update
sudo apt-get install -y curl openssh-server ca-certificates tzdata perl

Você também pode instalar o Postfix (Servidor SMTP) se quiser enviar notificações por email usando o GitLab. Isso é opcional.

Se quiser usar notificações por email, instale o Postfix com o comando:

sudo apt-get install -y postfix
informação

Durante a instalação do Postfix, pode aparecer uma configuração. Nesse caso, selecione 'Internet Site' e pressione enter. Use o DNS externo do seu servidor Linux para o 'mail name' e pressione enter. Se aparecerem outras telas, continue pressionando enter para aceitar as configurações padrão.

Se preferir usar outra solução para enviar emails, pule esta etapa e configure um servidor SMTP externo após a instalação do GitLab no seu servidor Linux seguindo um guia oficial do GitLab.

Passo 2: Instalando o GitLab

Depois de baixar e instalar todas as dependências necessárias, você está pronto para instalar o GitLab.

Neste guia, vamos instalar o GitLab diretamente dos repositórios oficiais.

O script abaixo adiciona os repositórios do GitLab ao gerenciador de pacotes apt:

curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.deb.sh | sudo bash

Depois, o pacote gitlab-ee pode ser instalado:

sudo apt-get install -y gitlab-ee

Quando o processo terminar, o GitLab estará pronto para uso no seu servidor Linux. Siga para a próxima seção para configurar algumas definições essenciais e garantir que o servidor funcione corretamente.

Passo 3: Configurando o GitLab

Para garantir que tudo funcione, você deve fazer algumas alterações no arquivo de configuração. Comece abrindo o arquivo de configuração do GitLab com seu editor de texto preferido. Vamos usar o editor nano como exemplo.

sudo nano /etc/gitlab/gitlab.rb

Depois, procure pela linha external_url e insira seu domínio ou o endereço IP do seu servidor Linux caso não tenha um domínio para usar com o GitLab.

## GitLab URL
##! URL na qual o GitLab estará acessível.
##! Para mais detalhes sobre como configurar external_url, veja:
##! https://docs.gitlab.com/omnibus/settings/configuration.html#configuring-the-external-url-for-gitlab
##!
##! Nota: Durante instalações/atualizações, o valor da variável de ambiente
##! EXTERNAL_URL será usado para preencher/substituir este valor.
##! Em instâncias AWS EC2, tentamos também obter o hostname/IP público
##! do AWS. Para mais detalhes, veja:
##! https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instancedata-data-retrieval.html
external_url 'http`s`://`Seu domínio / endereço IPv4 do seu servidor Linux`'

Além disso, recomendamos inserir seu email na linha letsencrypt['contact_emails']. Isso permitirá que o Let's Encrypt envie notificações e entre em contato sobre os certificados SSL automáticos e gratuitos.

nota

Você precisa usar um domínio para adquirir um certificado SSL gratuito do Let's Encrypt. Não é possível solicitar um certificado diretamente para seu endereço IP.

################################################################################
# Integração Let's Encrypt
################################################################################
# letsencrypt['enable'] = nil
# letsencrypt['contact_emails'] = [`Seu email aqui`] # Deve ser um array de emails para contato
# letsencrypt['group'] = 'root'
# letsencrypt['key_size'] = 2048
# letsencrypt['owner'] = 'root'
# letsencrypt['wwwroot'] = '/var/opt/gitlab/nginx/www'
# Veja https://docs.gitlab.com/omnibus/settings/ssl/index.html#renew-the-certificates-automatically para mais sobre essas configurações
# letsencrypt['auto_renew'] = true
# letsencrypt['auto_renew_hour'] = 0
# letsencrypt['auto_renew_minute'] = nil # Deve ser um número ou expressão cron, se especificado.
# letsencrypt['auto_renew_day_of_month'] = "*/4"
# letsencrypt['auto_renew_log_directory'] = '/var/log/gitlab/lets-encrypt'
# letsencrypt['alt_names'] = []
dica

Você pode usar CTRL+W para buscar por letsencrypt['contact_emails'] e pressionar enter para não precisar procurar manualmente o arquivo todo.

Quando terminar, pressione CTRL+X, depois Y e Enter para salvar as alterações.

Por fim, rode o comando abaixo para reconfigurar o GitLab com as novas opções.

sudo gitlab-ctl reconfigure

Esse processo pode levar um tempo, pois o GitLab será inicializado com as configurações atualizadas e processos automatizados. Os certificados SSL também serão emitidos se um domínio tiver sido usado.

Passo 4: Acessando a Interface Web

Após a inicialização, o servidor deve estar acessível via navegador. Acesse seu site digitando seu domínio ou endereço IP assim:

https://[seu_dominio] OU http://[seu_endereço_ip]

Na primeira vez que acessar a interface web, você verá a página de login.

Para obter acesso de admin no primeiro login, entre como usuário root usando root como nome de usuário.

A senha está armazenada em um arquivo no seu servidor Linux. Acesse o arquivo com o comando abaixo e encontre o campo Password.

sudo nano /etc/gitlab/initial_root_password
# AVISO: Este valor é válido apenas nas seguintes condições

# 1. Se fornecido manualmente (via variável de ambiente `GITLAB_ROOT_PASSWORD` ou via configuração `gitlab_rails['initial_root_password']` no `gitlab.rb`), antes do banco de dados ser inicializado pela primeira vez.

# 2. A senha não foi alterada manualmente, nem via UI nem via linha de comando.

#

# Se a senha mostrada aqui não funcionar, você deve resetar a senha do admin seguindo https://docs.gitlab.com/ee/security/reset_user_password.html#reset-your-root-password.

Password: `[SUA_SENHA_AQUI]`

# NOTA: Este arquivo será deletado automaticamente na primeira reconfiguração após 24 horas.

Digite o usuário e senha na página de login para acessar seu dashboard GitLab pela primeira vez. Agora você pode acessar seu painel GitLab no seu próprio servidor Linux.

Recomendamos fortemente criar um novo usuário e/ou alterar a senha do usuário root. Isso pode ser feito acessando Admin no canto inferior esquerdo e selecionando Overview->Users. Nessa página, você pode gerenciar os usuários da sua instância GitLab.

Opcional: Configure um firewall com ufw

Você pode pular essa parte se não quiser configurar firewall ou, por exemplo, já usar firewalld no OpenSUSE. Garanta que as portas 80/443 e 22 estejam liberadas.

Instalar ufw

Se você já tem o ufw instalado, pode pular essa etapa.

sudo apt-get install -y ufw

Liberar as portas necessárias

sudo ufw allow http
sudo ufw allow https
sudo ufw allow OpenSSH

Ativar firewall

atenção

Por padrão, isso bloqueará o acesso a todas as portas que não estiverem liberadas. Certifique-se de que a whitelist está configurada corretamente antes de rodar esse comando.

Para ativar o firewall, rode:

sudo ufw enable

Conclusão

Parabéns, você instalou o GitLab com sucesso! Se tiver dúvidas ou problemas, entre em contato com nosso time de suporte, disponível todos os dias para te ajudar!

Se quiser fazer configurações adicionais, recomendamos ler a Documentação Oficial do GitLab para os próximos passos.