Saltar para o conteúdo principal
50% de desconto todos os planos, tempo limitado. A partir de $2.48/mo
Gogs

Gogs

Gogs é um serviço Git auto-hospedado simples de configurar. Mais leve que Gitea e GitLab, escrito em Go, roda tranquilamente em uma VPS de 512 MB ou até em um Raspberry Pi. O servidor Git original baseado em Go, predecessor do Gitea, ainda mantido ativamente para quem prefere uma solução mais enxuta.

Em resumo

47.6k

Estrelas no GitHub

56

Visualizações de página

149

Instalações ativas

Licença MIT Versão 0.14.2 OS Ubuntu Server 24.04 LTS Min RAM 1 GB IP IPV4,IPV6

As instalações ativas são dados de amostra (pré-visualização); a métrica real será conectada antes do lançamento.

Acesso

  • Abra o seu browser e visite: https://<SERVER_IP>
  • É esperado um aviso SSL no browser (certificado autoassinado)
  • Criar uma nova conta
  • A primeira conta registrada se torna Administrador

Desativar o autorregistro (opcional)

Por padrão, o autorregistro de usuários está habilitado.

1. Edite o arquivo de configuração: /etc/gogs/conf/app.ini

2. Sob o [auth] seção, alterar DISABLE_REGISTRATION = false to DISABLE_REGISTRATION = true

3. Reinicie o Gogs:

systemctl restart gogs

Ficheiros e diretórios importantes

  • Diretório de instalação: /opt/gogs
  • Arquivo de configuração: /etc/gogs/conf/app.ini
  • Dados de aplicação: /var/lib/gogs
  • Repositórios: /var/lib/gogs/repositories
  • Registros: /var/log/gogs
  • Serviço Systemd: /etc/systemd/system/gogs.service
  • Configuração Nginx: /etc/nginx/sites-available/gogs.conf
  • Certificados TLS: /etc/nginx/ssl/

Uso do Git

HTTPS (certificado autoassinado):

GIT_SSL_NO_VERIFY=true git clone https://<SERVER_IP>/<USERNAME>/<REPOSITORY>.git

SSH (servidor integrado):

git clone ssh://git@<SERVER_IP>:2222/<USERNAME>/<REPOSITORY>.git

Gestão de serviços

Gogs:

systemctl status gogs
systemctl restart gogs

Nginx:

systemctl status nginx
systemctl restart nginx

PostgreSQL :

systemctl status postgresql
systemctl restart postgresql

Notas

  • O arquivo de configuração principal está localizado em /etc/gogs/conf/app.ini. Após modificar o arquivo de configuração, reinicie o serviço com systemctl restart gogs.
  • O limite de upload do Nginx está definido em /etc/nginx/sites-available/gogs.conf usando client_max_body_size. Aumente esse valor para repositórios grandes e reinicie o Nginx.
  • Para implantações de grande porte, você pode descomentar LimitMEMLOCK=infinity e LimitNOFILE=65535 in /etc/systemd/system/gogs.service, depois execute systemctl daemon-reload e reinicie o Gogs.
  • As credenciais do banco de dados estão definidas em /etc/gogs/conf/app.ini.
  • Em produção, é recomendado substituir o certificado autoassinado por um certificado válido do Let's Encrypt.
  • Se estiver usando um certificado autoassinado, a clonagem via HTTPS requer GIT_SSL_NO_VERIFY=true.

Ativar SSL com um domínio

1. Aponte o seu domínio para o IP do servidor.

2. Atualize a configuração do Gogs (/etc/gogs/conf/app.ini):

EXTERNAL_URL = https://yourdomain.com/
DOMAIN = yourdomain.com
SSH_DOMAIN = yourdomain.com

3. Reinicie o serviço Gogs para aplicar as alterações:

systemctl restart gogs

3. Edite a configuração do Nginx e substitua ambos os server_name <IP>; com o seu domínio (<your-domain>) para ambos os blocos HTTP (porta 80) e HTTPS (porta 443):

vim /etc/nginx/sites-available/gogs.conf

4. Instale Certbot:

apt install -y certbot python3-certbot-nginx

5. Execute o seguinte comando para gerar um certificado válido do Let's Encrypt:

certbot certonly --nginx --non-interactive --agree-tos --email [email protected] -d yourdomain.com

6. Substitua os caminhos de SSL na configuração do Nginx:

vim /etc/nginx/sites-available/gogs.conf
# Before:
    # ssl_certificate /etc/nginx/ssl/gogs.crt;
    # ssl_certificate_key /etc/nginx/ssl/gogs.key;
# After:
    # ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
    # ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;

7. Reinicie o Nginx para aplicar as alterações:

systemctl restart nginx

8. Abra o navegador e acesse: https://yourdomain.com

Mais em Ferramentas DevOps

Aplicações relacionadas.

Implante o Gogs agora. A partir de $2,48/mês.