Linux

Como instalar o Gitea no Ubuntu 20.04

Como instalar o Gitea no Ubuntu 20.04

Gitea é um servidor git auto-hospedado rápido e fácil de usar escrito em Go. Inclui um editor de arquivo de repositório, rastreamento de problemas de projeto, gerenciamento de usuário, notificações, wiki integrado e muito mais.

Gitea é um aplicativo leve e pode ser instalado em sistemas de baixa potência. Se você está procurando uma alternativa ao Gitlab com uma pegada de memória muito menor e não precisa de todos os recursos que o Gitlab oferece, experimente o Gitea.

Este artigo explica como instalar e configurar o Gitea no Ubuntu 20.04.

Pré-requisitos #

Gitea oferece suporte a SQLite, PostgreSQL e MySQL / MariaDB como back-ends de banco de dados.

SQLite é recomendado apenas para pequenas instalações. Instalações maiores devem usar MySQL ou PostgreSQL.

Usaremos SQLite como banco de dados para Gitea. Se o SQLite não estiver instalado em seu sistema Ubuntu, instale-o inserindo os seguintes comandos como usuário sudo:

atualização do apt sudosudo apt install sqlite3

Instalando Gitea #

Gitea fornece imagens Docker e pode ser instalado a partir do código-fonte, binário e como um pacote. Vamos instalar o Gitea a partir do binário.

Instale Git #

A primeira etapa é instalar o Git em seu servidor:

atualização do apt sudosudo apt install git

Verifique a instalação exibindo a versão do Git:

git --version
git versão 2.25.1 

Crie um usuário Git #

Crie um novo usuário do sistema que executará o aplicativo Gitea digitando:

sudo adduser \ --sistema \ --shell / bin / bash \ --gecos 'Controle de versão Git' \ --grupo \ --senha desativada \ --home / home / git \ idiota

O comando acima cria um novo usuário e grupo chamado idiota, e definir o diretório inicial para / home / git. A saída será semelhante a abaixo:

Adicionando usuário do sistema 'git' (UID 112) ... Adicionando novo grupo 'git' (GID 118) ... Adicionando novo usuário 'git' (UID 112) com o grupo 'git' ... Criando diretório inicial '/ home / git' .. 

Baixe o binário Gitea #

Vá para a página de download do Gitea e baixe o binário mais recente para sua arquitetura. No momento em que este artigo foi escrito, a versão mais recente é 1.10.2. Se houver uma nova versão disponível, altere o VERSÃO variável no comando abaixo.

Usar wget para baixar o binário Gitea no / tmp diretório:

VERSÃO = 1.14.1sudo wget -O / tmp / gitea https: // dl.gitea.io / gitea / $ VERSION / gitea - $ VERSION -linux-amd64

Você pode executar o gitea binário de qualquer local. Seguiremos a convenção e moveremos o binário para o / usr / local / bin diretório:

sudo mv / tmp / gitea / usr / local / bin

Torne o executável binário:

sudo chmod + x / usr / local / bin / gitea

Execute os comandos abaixo para criar os diretórios e definir as permissões e propriedade necessárias:

sudo mkdir -p / var / lib / gitea / custom, data, logsudo chown -R git: git / var / lib / gitea /sudo chmod -R 750 / var / lib / gitea /sudo mkdir / etc / giteasudo chown root: git / etc / giteasudo chmod 770 / etc / gitea

A estrutura de diretório acima é recomendada pela documentação oficial do Gitea.

As permissões do / etc / gitea diretório está definido para 770 para que o assistente de instalação possa criar o arquivo de configuração. Assim que a instalação for concluída, definiremos permissões mais restritivas.

Criar um Arquivo de Unidade Systemd #

Vamos executar o Gitea como um serviço systemd.

Baixe o arquivo de amostra da unidade systemd para o / etc / systemd / system diretório digitando:

sudo wget https: // raw.githubusercontent.com / go-gitea / gitea / main / contrib / systemd / gitea.serviço -P / etc / systemd / system /

Você não precisa editar o arquivo, ele está configurado para corresponder à nossa configuração.

Habilite e inicie o serviço Gitea:

sudo systemctl daemon-reloadsudo systemctl enable --now gitea

Verifique se o Gitea está em execução:

sudo systemctl status gitea
● gitea.serviço - Gitea (Git com uma xícara de chá) Carregado: carregado (/ etc / systemd / system / gitea.serviço; ativado; Predefinição do fornecedor: habilitado) Ativo: ativo (em execução) desde Qui 2021-05-06 05:32:04 UTC; 7s atrás PID principal: 77781 (gitea) Tarefas: 6 (limite: 470) Memória: 130.6M CGroup: / system.slice / gitea.serviço └─77781 / usr / local / bin / gitea web --config / etc / gitea / app.ini… 

Configurar Gitea #

Agora que o Gitea foi baixado e executado, podemos finalizar a instalação por meio da interface da web.

Por padrão, o Gitea escuta as conexões na porta 3000 em todas as interfaces de rede.

Se você tiver um firewall UFW em execução no seu servidor, será necessário abrir a porta Gitea. Para permitir o tráfego na porta 3000, digite o seguinte comando:

sudo ufw allow 3000 / tcp

Abra seu navegador, digite http: // YOUR_DOMAIN_IR_IP: 3000, e uma tela semelhante à seguinte aparecerá:

Configurações do banco de dados:

Configurações gerais do aplicativo:

Você pode alterar as configurações a qualquer momento editando o arquivo de configuração Gitea.

Para iniciar a instalação, clique no botão “Instalar Gitea”.

A instalação é instantânea. Depois de concluído, você será redirecionado para a página de login.

Clique no link “Precisa de uma conta? Registrar agora." link. O primeiro usuário registrado é adicionado automaticamente ao grupo Admin.

Altere as permissões do arquivo de configuração Gitea para somente leitura usando:

sudo chmod 750 / etc / giteasudo chmod 640 / etc / gitea / app.ini

É isso. Gitea foi instalado em sua máquina Ubuntu.

Configurando Nginx como SSL Termination Proxy #

Esta etapa é opcional, mas é altamente recomendada. A rescisão SSL significa que o Nginx atuará como um ponto intermediário entre o aplicativo Gitea e os clientes da web para que você possa acessar o Gitea via HTTPS.

Para usar o Nginx como proxy reverso, você precisa ter um domínio ou subdomínio apontando para o IP público do seu servidor. Neste exemplo, usaremos idiota.exemplo.com.

Primeiro, instale o Nginx e gere um certificado Let's Encrypt SSL gratuito usando os guias abaixo:

Uma vez feito isso, abra seu editor de texto e edite o arquivo de bloqueio do servidor de domínio:

sudo nano / etc / nginx / sites-enabled / git.exemplo.com
/ etc / nginx / sites-enabled / git.exemplo.com
servidor escuta 80; server_name git.exemplo.com; incluir snippets / letsencrypt.conf; return 301 https: // git.exemplo.com $ request_uri;  servidor ouvir 443 ssl http2; server_name git.exemplo.com; proxy_read_timeout 720s; proxy_connect_timeout 720s; proxy_send_timeout 720s; client_max_body_size 50m; # Cabeçalhos de proxy proxy_set_header X-Forwarded-Host $ host; proxy_set_header X-Forwarded-For $ proxy_add_x_forwarded_for; esquema proxy_set_header X-Forwarded-Proto $; proxy_set_header X-Real-IP $ remote_addr; # Parâmetros SSL ssl_certificate / etc / letsencrypt / live / git.exemplo.com / fullchain.pem; ssl_certificate_key / etc / letsencrypt / live / git.exemplo.com / privkey.pem; ssl_trusted_certificate / etc / letsencrypt / live / git.exemplo.com / cadeia.pem; incluir snippets / letsencrypt.conf; incluir snippets / ssl.conf; # log files access_log / var / log / nginx / git.exemplo.com.Acesso.registro; error_log / var / log / nginx / git.exemplo.com.erro.registro; # Manipular / solicitar localização / proxy_redirect off; proxy_pass http: // 127.0.0.1: 3000;  

Não se esqueça de substituir o git.exemplo.com com o seu domínio Gitea e defina o caminho correto para os arquivos de certificado SSL. O tráfego HTTP é redirecionado para HTTPS

Reinicie o serviço Nginx para que as alterações tenham efeito:

sudo systemctl restart nginx

Em seguida, altere o domínio Gitea e o URL raiz. Para fazer isso, abra o arquivo de configuração e edite as seguintes linhas:

sudo nano / etc / gitea / app.ini
/ etc / gitea / app.ini
[servidor] DOMAIN = git.exemplo.com ROOT_URL = https: // git.exemplo.com / 

Reinicie o serviço Gitea digitando:

sudo systemctl restart gitea

Neste ponto, o proxy Gitea está configurado e você pode acessá-lo em: https: // git.exemplo.com

Configurando notificações por e-mail #

Se você deseja que sua instância do Gitea envie emails de notificação, você pode instalar o Postfix ou usar algum serviço de email transacional, como SendGrid, MailChimp, MailGun ou SES.

Para habilitar notificações por e-mail, abra o arquivo de configuração e edite as seguintes linhas:

sudo nano / etc / gitea / app.ini
/ etc / gitea / app.ini
[mailer] ENABLED = true HOST = SMTP_SERVER: SMTP_PORT FROM = SENDER_EMAIL USER = SMTP_USER PASSWD = YOUR_SMTP_PASSWORD 

Certifique-se de colocar as informações corretas do servidor SMTP.

Reinicie o serviço Gitea para que as alterações tenham efeito:

sudo systemctl restart gitea

Para verificar as configurações e enviar um e-mail de teste, faça login no Gitea e vá para: Administração do site> Configuração> Configuração do SMTP Mailer.

O Gitea também permite que você se conecte ao Slack criando um webhook e envie notificações aos seus canais do Slack .

Atualizando Gitea #

Para atualizar para a versão mais recente do Gitea, basta baixar e substituir o binário.

  1. Pare o serviço Gitea:

    sudo systemctl stop gitea
  2. Baixe a versão mais recente do Gitea e mova-a para o / usr / local / bin diretório:

    VERSÃO =wget -O / tmp / gitea https: // dl.gitea.io / gitea / $ VERSION / gitea - $ VERSION -linux-amd64sudo mv / tmp / gitea / usr / local / bin
  3. Torne o executável binário:

    sudo chmod + x / usr / local / bin / gitea
  4. Reinicie o serviço Gitea:

    sudo systemctl restart gitea

É isso.

Conclusão #

Este tutorial o guiou pela instalação do Gitea no Ubuntu 20.04. Para obter mais informações sobre como configurar sua instância Gitea e criar seu primeiro projeto, visite a página de documentação do Gitea .

Se você tiver dúvidas, fique à vontade para deixar um comentário abaixo.

Como aumentar o FPS no Linux?
FPS significa Quadros por segundo. A tarefa do FPS é medir a taxa de quadros em reproduções de vídeo ou desempenho de jogos. Em palavras simples, o nú...
Top jogos do Oculus App Lab
Se você é proprietário de um fone de ouvido Oculus, deve estar informado sobre o carregamento lateral. Sideload é o processo de instalação de conteúdo...
Os 10 melhores jogos para jogar no Ubuntu
A plataforma Windows tem sido uma das plataformas dominantes para jogos devido à grande porcentagem de jogos que estão sendo desenvolvidos hoje para o...